单击按钮时在后台通过电子邮件发送文本文件

时间:2012-06-21 16:43:39

标签: java android android-intent email-integration

我想附加一个文本文件,并在按下按钮时自动将其通过电子邮件发送到预定义的电子邮件地址。

我正在创建一个这样的文本文件:

   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 个答案:

答案 0 :(得分:2)

有关如何在没有意图的情况下发送电子邮件,请参阅this link。如本教程中所述,您需要javamail-android libraries

请注意addAttachment类中的Mail方法。

答案 1 :(得分:0)

你可以产生一个新线程,为你发送电子邮件... 或者更优雅的解决方案是在应用程序启动时生成第二个线程,并且当有新消息要发送时,主线程会通知第二个线程。

答案 2 :(得分:0)

这取决于您希望如何发送电子邮件。 This链接显示如何使用默认邮件客户端发送电子邮件。 这让用户选择

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..."));
    }

答案 3 :(得分:0)

要在后台发送邮件,您可以使用AsyncTask并自动设置(不使用任何意图)use JavaMail api