具体的には、extra data を EXTRA_EMAILに、そしてToアドレスをStringの配列にする必用があったとのこと。
参考にしたサイトはこちら。
今作っているアプリは、ListViewで選択をしたメールアドレスに対してメールを送信するので
1.ArrayListにToアドレスを保存
2.配列に変換
3.putExtra
な感じ。
コードは以下。
ArrayListtoList = new ArrayList (); Intent intent = new Intent(Intent.ACTION_SEND); for (Member member : memberList) { if (member.isJoin()) { toList.add(member.getMail()); } } intent.putExtra(Intent.EXTRA_EMAIL, (String[]) toList.toArray(new String[0])); intent.putExtra(Intent.EXTRA_TEXT, "メール本文"); intent.putExtra(Intent.EXTRA_SUBJECT, "メールタイトル"); intent.setType("message/rfc822"); startActivity(Intent.createChooser(intent, "choose email client"));
当然だけど、putExtraはArrayList型を引数にしてあげても動く。お陰で詰まってた。ArrayListでも大丈夫だろう、と勘違い。
0 件のコメント:
コメントを投稿