我通过我的应用程序使用以下代码发送邮件:
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_EMAIL, new String[] {"email@example.com"});
intent.putExtra(Intent.EXTRA_SUBJECT, "subject here");
intent.putExtra(Intent.EXTRA_TEXT, "body text");
Uri uri = Uri.parse("file://" + file_name+".jpg");
intent.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(Intent.createChooser(intent, "Send email..."));
这很好用,但是如果没有Intent.createChooser我怎么能这样做,并且不要让用户选择应用程序进行共享并直接转到Gmail应用程序,假设每个Android手机都有。
答案 0 :(得分:1)
您可以使用以下代码打开您想要的任何意图,例如gmail,facebook,email等。在代码传递中使用的类型中的简单" gmail"如果你想打开Gmail,通过" face"如果你想打开Facebook
Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("text/html");
List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(intent, 0);
if (!resInfo.isEmpty())
{
for (ResolveInfo info : resInfo)
{
if (info.activityInfo.packageName.toLowerCase().contains(type) || info.activityInfo.name.toLowerCase().contains(type))
{
intent.putExtra(android.content.Intent.EXTRA_TEXT, htmlBody);
intent.setPackage(info.activityInfo.packageName);
startActivity(Intent.createChooser(intent, getResources().getString(R.string.share_send_text)));
}
}