在android中以编程方式启动电子邮件客户端并将电子邮件地址传递给客户端

时间:2015-06-11 09:00:32

标签: android email android-intent

在我的应用中,我有一个联系人页面,当用户点击联系人姓名时,会显示一个下拉列表,其中包含联系人的电子邮件和电话号码。

我正在使用以下代码在包含电子邮件地址的文本视图的onClick方法中启动电子邮件客户端:

contactEmailText.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            Intent emailIntent = new Intent(Intent.ACTION_SEND);
            emailIntent.setType("text/plain");
            emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{contactEmailText.getText().toString()});
            startActivity(emailIntent);

        }
    });

我的问题是,当我启动电子邮件客户端时,第一个联系人电子邮件总是在收件人栏中,如果我通过退出应用程序关闭客户端然后再次执行它我想要的电子邮件地址在收件人/栏中我需要的地方。

有没有办法每次都将我想要的电子邮件传递到客户端,而无需退出电子邮件应用程序。

1 个答案:

答案 0 :(得分:1)

您必须先添加额外的标记才能关闭电子邮件应用。什么与singletask左右。尝试类似:

 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);      
 intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); 

看看更多的旗帜。