0

問い合わせ

ここで、ユーザーは自分の名前、年齢、メッセージを入力する必要があります。Gmailアプリを開き、入力した名前/年齢/メッセージを表示する必要があります。MESSAGEのみを表示しています。残りの詳細私はそれを取得していません。

String s1= name.getText().toString();
   String s2= age.getText().toString();
   String s3= msg.getText().toString();
   Intent email = new Intent(Intent.ACTION_SEND);
   email.putExtra(Intent.EXTRA_EMAIL,
   new String[] { "abc@gmail.com" });
   email.putExtra(Intent.EXTRA_SUBJECT,"hiiiii");
   email.putExtra("Name", s1);
   email.putExtra("Age", s2);
   email.putExtra(Intent.EXTRA_TEXT, s3);
   email.setType("message/rfc822");
   startActivity(Intent.createChooser(email,"Choose an Email client :"));
4

3 に答える 3

1

Gmail は、名前と年齢のフィールドを取りません。

それらをメッセージ本文に添付したい場合は、それらをs4msg文字列に追加して、それらすべてをメッセージとして一緒に渡すことができます。

s4msg = s1name + "\n" + s2age + "\n" + s4msg   
email.putExtra(Intent.EXTRA_TEXT, s4msg);
于 2012-12-19T14:25:36.010 に答える
1

メールアプリケーションを開く前に、メール本文をフォーマットする必要があります。何かのようなもの:

String messageTemplate = "Hi %1$s\nThis is your message: %2$s";
String mailBody = String.format( messageTemplate, name.getText().toString(), msg.getText().toString() );

Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[] { "abc@gmail.com" });
email.putExtra(Intent.EXTRA_SUBJECT,"hiiiii");
email.putExtra(Intent.EXTRA_TEXT, mailBody);
email.setType("message/rfc822");
startActivity(Intent.createChooser(email,"Choose an Email client :"));
于 2012-12-19T14:26:16.637 に答える
0

これは、タイプ EMAIL には名前や年齢の概念がないためです。電子メールには、受信者、送信者、メッセージ、件名のみが含まれます。名前と年齢のデータを連結して、件名またはメッセージに入れる必要があります。次のようなものが機能します。

String s1= name.getText().toString();
String s2= age.getText().toString();
String s3= msg.getText().toString();
Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL,
new String[] { "abc@gmail.com" });
email.putExtra(Intent.EXTRA_SUBJECT,"hiiiii");
email.putExtra("Name", s1);
email.putExtra("Age", s2);
nameAgeStr = "Name: " + s1 + " Age: " + s2 + ".\n";
email.putExtra(Intent.EXTRA_TEXT,nameAgeStr + s3);
email.setType("message/rfc822");
startActivity(Intent.createChooser(email,"Choose an Email client :"));

これにより、メールの本文(メッセージ)の行に名前と年齢が表示されます。

于 2012-12-19T14:25:37.167 に答える