从Android应用程序发送电子邮件

Uma*_*til 17 email android

我需要为用户提供功能,用户可以通过发送电子邮件来共享某些数据.我使用下面的代码.

Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("text/html");
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "testing email send.");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml("<b>this is html text in email body.</b>"));
startActivity(Intent.createChooser(emailIntent, "Email to Friend"));
Run Code Online (Sandbox Code Playgroud)

这显示了邮件应用程序,gmail和蓝牙供用户选择.我不希望用户在此列表中显示蓝牙.我需要做什么 ?我有Facebook应用程序,它做同样的事情,但没有在列表中显示蓝牙.我需要做同样的事情.

Ash*_*hak 15

您可以使用ACTION_SENTTO而不是ACTION_SEND来获取电子邮件客户端列表.我在HTC Wildfire上尝试了这个,它安装了默认的电子邮件客户端,GMail app和k9-3.508-release.当我使用ACTION_SENDTO运行你的代码时,无论蓝牙是启用还是禁用,我都会在上面列出3个电子邮件客户端,而不是蓝牙.我在蓝牙启用和禁用蓝牙时都尝试过.它对我很有用.

Intent emailIntent = new Intent(android.content.Intent.ACTION_SENDTO);
emailIntent.setType("text/html");
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "testing email send.");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml("<b>this is html text in email body.</b>"));
startActivity(Intent.createChooser(emailIntent, "Email to Friend"));
Run Code Online (Sandbox Code Playgroud)

  • 它对我不起作用.ACTION_SEND显示GMail,但ACTION_SENDTO显示"没有应用程序可以执行此操作". (9认同)

per*_*son 14

请尝试使用此类型:

emailIntent.setType("message/rfc822");
Run Code Online (Sandbox Code Playgroud)