0

テキスト ファイルを添付し、ボタンが押されたときにバックグラウンドで定義済みの電子メール アドレスに自動的に電子メールで送信したいと考えています。

次のようなテキストファイルを作成しています。

   try {
    FileOutputStream fos = openFileOutput("abc.txt",MODE_PRIVATE);
    String s = "Data to be written ok fine cool";fos.write(s.getBytes());
   } catch (Exception e) {
e.printStackTrace();

}

電子メールの自動送信を設定するにはどうすればよいですか?

4

4 に答える 4

2

意図せずに電子メールを送信する方法については、このリンクを参照してください。チュートリアルで述べたように、 javamail-android ライブラリが必要になります。

クラスのaddAttachmentメソッドに注意してください。Mail

于 2012-06-21T16:49:50.510 に答える
0

それはあなたがどのようにメールを送りたいかによります。 このリンクは、デフォルトのメールクライアントを使用せずに電子メールを送信する方法を示しています。そしてこれはユーザーが選択できるようにする

private void sendEmail() {
        final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
        emailIntent.setType("plain/text");
        emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, String[]{"recipient@example.com"} );
        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Subject");
        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "content");
        this.startActivity(Intent.createChooser(emailIntent, "Send mail..."));
    }
于 2012-06-21T16:52:52.437 に答える
0

メールをバックグラウンドで送信するには、AsyncTaskを使用し、(インテントを使用せずに)自動にするには、JavaMailapiを使用します。

于 2012-06-21T16:52:57.257 に答える
0

メール送信を行う新しいスレッドを生成することもできます...または、アプリケーションの開始時に 2 番目のスレッドを生成し、新しいメッセージがあるとメイン スレッドが 2 番目のスレッドに通知するのが、より洗練された解決策かもしれません。送信する。

于 2012-06-21T16:49:03.330 に答える