我正在尝试使用标准的Gmail应用从我的应用发送电子邮件。 但我一直都在选择。 如何在没有选择器的情况下立即打开标准gmail应用程序? 我不需要任何可以发送电子邮件的应用程序的选择器。 我只需要GMAIL。 谢谢! 这是我的代码。
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("message/rfc822");
intent.setClassName("com.google.android.gm", "com.google.android.gm.ConversationListActivity");
intent.putExtra(Intent.EXTRA_EMAIL , new String[]{"mymail@gmail.com"});
intent.putExtra(Intent.EXTRA_SUBJECT, "Subject");
intent.putExtra(Intent.EXTRA_TEXT , "Text");
try {
startActivity(intent);
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(getApplicationContext(), "There are no email clients installed.", Toast.LENGTH_SHORT).show();
}
答案 0 :(得分:4)
你能试试这段代码。
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
emailIntent.setType("plain/text");
emailIntent.setClassName("com.google.android.gm", "com.google.android.gm.ComposeActivityGmail");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{"someone@gmail.com"});
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Yo");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Hi");
startActivity(emailIntent);
答案 1 :(得分:0)
请检查这个问题,它将主要帮助您解决第三个问题,因为这个注释,重要的是要注意,如果您打算使用此代码,请检查以确保用户具有“com”包。 google.android.gm“安装在他们的设备上。在任何语言中,请确保检查特定字符串和初始化的空值。
答案 2 :(得分:-1)
如果您想使用GMail应用,则需要使用ACTION.SENDTO意图 而不是选择者。您还将在URI文本中添加额外内容 而不是意图。
Bearing: 102.38029388096368
Distance: 90.59766443003579
X: 184
Y: 116