我实现了从我的应用程序发送电子邮件。
我使用SO 上的这个问题作为实现这一目标的指南,请注意,在有人说要使用的答案中,setType("message/rfc822");
因为它会过滤掉所有其他听取ACTION_SEND
意图的电子邮件客户端。
我的问题是我的 Galaxy Tab 10.1 仍然有两个应用程序来监听意图,所以仍然会打开一个弹出窗口,询问我要使用什么电子邮件客户端。(gMail 应用程序或默认的电子邮件应用程序)。我不能卸载一个,所以列表不会弹出,但我也不想。
有没有办法强制 android 立即使用列表中的第一个?那么用户可以跳过弹出对话框吗?
这是我当前的代码:
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("message/rfc822");
i.putExtra(Intent.EXTRA_SUBJECT, context.getString(R.string.notes_from_pf));
i.putExtra(Intent.EXTRA_TEXT , context.getString(R.string.mail_message));
try {
startActivity(Intent.createChooser(i, "Send mail..."));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(context, "There are no email clients installed.", Toast.LENGTH_SHORT).show();
}