-1

我正在创建一个应用程序,用户可以通过单击共享按钮在其中共享“某些东西”。分享“东西”的步骤是:

  1. 单击共享按钮后,应打开联系人列表
  2. 通过选择一个联系人(具有有效的电子邮件地址),数据应直接从发件人的默认电子邮件地址(Gmail)发送到所选联系人,而不会弹出一个窗口来选择电子邮件客户端,如“Gmail”、“Dropbox”等。 .

在http://mobile.tutsplus.com/tutorials/android/android-essentials-using-the-contact-picker/的帮助下,我设法获得了联系人的电子邮件 ID, 但在选择联系人后,我会弹出一个选择电子邮件客户端,如“Gmail”、“Dropbox”等。

到目前为止,这是我的代码

       if( email.length() != 0 )
       {
            Intent sharingIntent = new Intent(
                   android.content.Intent.ACTION_SEND );
            sharingIntent.setType("message/rfc822");
            String shareBody =
                            "Hey buddy listen to this station it is awesome\n"
                            + mNowPlayingSong.mAudioUrl;
            sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,
                           "I liked this song" );
           sharingIntent.putExtra(                                                     
                          android.content.Intent.EXTRA_TEXT, shareBody );
           String emailAddressList[] = {email};
           sharingIntent.putExtra(Intent.EXTRA_EMAIL, emailAddressList );
           startActivity( sharingIntent );
4

1 回答 1

3

您不能使用默认应用程序静默发送电子邮件。您只能创建将调用活动并填写所有字段的意图。

另一种可能性是将您自己的电子邮件客户端嵌入到您的应用程序中。在这种情况下,如果用户提供凭据,那么您就可以静默发送电子邮件。要实现第二个选项,请检查: Sending Email in Android using JavaMail API without using the default/built-in app

于 2011-12-21T13:56:56.757 回答