添付ファイルを送信するためにアンドロイドで設定済みの電子メールクライアントを起動しようとしています。私がエミュレータでそれを行うと、送信を行うように設定された電子メールクライアントはありません。また、onActivityResult()を設定してプログラム内の電車の停電を止めさせてもらえますが、物事が爆発したときに制御権が得られないようです。どうして?android:intent.ACTION_SENDの設定されたアクションを確認していますか?
これが私の意図である:
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{""});
intent.putExtra(Intent.EXTRA_SUBJECT, CSV_MAIL_SUBJECT);
intent.putExtra(Intent.EXTRA_TEXT, CSV_MAIL_MSGBODY);
intent.putExtra(Intent.EXTRA_STREAM, createCSV.tempfile.toURI());
try
{
startActivityForResult (intent, CSV_MAIL_RESULT_CODE);
}
catch (ActivityNotFoundException anf)
{
Log.d (TAG, "Activity not configured.");
//TODO: toast or something here..
}
ありがとうございます!あなたは両方のカウントで正しかった。私は、ActivityNotFoundExceptionのtry/catchを追加し、私が望んでいたような制御を得ることができました。さらに、プレーン/テキストをテキスト/プレーンに変更すると、メールアプリケーションが実際に登場しました。修正を反映するために上記のコードが変更されました。 – wufoo