如何在Android电子邮件应用程序中附加电子邮件正文中的3个字段

时间:2014-07-31 17:03:48

标签: android email android-intent attachment

通常,电子邮件应用只有一个EditText,应用程序会复制用户编写的内容并将其粘贴到电子邮件客户端。 我还有2个字段,特别是2个包含经度和纬度协调的TextView,我也希望它们出现在电子邮件正文中。 我使用此代码,但只有最新的字符串出现在邮件(lat)

            Intent emailIntent = new Intent(Intent.ACTION_SEND);
            emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{"email@email.com"});
            emailIntent.putExtra(Intent.EXTRA_SUBJECT, "subject");
            emailIntent.putExtra(Intent.EXTRA_TEXT, message);
            emailIntent.putExtra(Intent.EXTRA_TEXT, longi);
            emailIntent.putExtra(Intent.EXTRA_TEXT, lat);
            emailIntent.setType("message/rfc822");
            emailIntent.putExtra(Intent.EXTRA_STREAM, imageUri);
            startActivity(Intent.createChooser(emailIntent, "Choose an Email client"));

2 个答案:

答案 0 :(得分:2)

您为putExtra()致电Intent.EXTRA_TEXT的第二次和第三次,您将替换之前的值。

而是创建一个字符串,其中包含整个消息,包括longilat值,并使用putExtra()对于那一个字符串Intent.EXTRA_TEXT

答案 1 :(得分:1)

构造一个包含所有三个字段的字符串。

String text = "";
text += message + "\n" + longi + "\n" + lat;
emailIntent.putExtra(Intent.EXTRA_TEXT, text);

当然可以根据需要使用文字和格式。