4

我正在通过我的电子邮件 ID 发送我的消息数据。我创建了一个 mainActivity 类,其中包含一个 editText(用于 emailId)和一个按钮。另一个类是 BroadcastReceiver 类,我在其中检索数据。现在我不明白如何将该数据发送到后台提供的电子邮件。我用谷歌搜索了很多,但无法得到所需的回复。请分享想法并帮助我。

4

3 回答 3

8

我为此创建了开源库。用法很简单:

BackgroundMail bm = new BackgroundMail(context);
bm.setGmailUserName("yourgmail@gmail.com");
bm.setGmailPassword("yourgmailpassword");
bm.setMailTo("receiver@gmail.com");
bm.setFormSubject("Subject");
bm.setFormBody("Body");
bm.send();

有了这个权限

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/> 

你可以在这里下载: https ://github.com/kristijandraca/BackgroundMailLibrary

于 2013-12-13T09:07:05.187 回答
2

在 android 中,您可以发送带有明确电子邮件意图的电子邮件,但它会显示一个电子邮件屏幕,并且不允许在后台发送数据。

要在后台发送数据,您可以使用java mail api发送邮件。

看看这个http://www.tutorialspoint.com/java/java_sending_email.htm

于 2013-11-14T09:52:47.730 回答
-1

这是使用显式电子邮件意图发送电子邮件的一种方式,但这不会在后台发送

 Intent sendemai = new Intent(Intent.ACTION_SEND);
 sendemai.putExtra(Intent.EXTRA_EMAIL,
                        new String[] { toaddress });
 sendemai.putExtra(Intent.EXTRA_CC,
                        new String[] { emailadd }); 
 sendemai.putExtra(Intent.EXTRA_SUBJECT, sub);
 sendemai.putExtra(Intent.EXTRA_TEXT, body); 
 // need this to prompts email client only
 sendemai.setType("message/rfc822"); 
 startActivity(Intent.createChooser(payment_request,
                        "Select email application"));

如果要在后台发送,则需要提供一些用户安全凭据。看这里

于 2013-11-14T09:53:16.790 回答