【问题标题】:Send html file as email body content using android intent使用 android 意图将 html 文件作为电子邮件正文内容发送
【发布时间】:2018-04-29 14:20:52
【问题描述】:

我有一个以 html 文档形式共享产品的电子商务应用。使用此代码,我可以将 product.html 作为附件发送。我想将 html 文档作为电子邮件正文而不是附件发送。

这是我的代码:

private void sendEmail(Context context, String emailTo, String emailCC,
                       String subject, String emailText, List<String> filePaths) {

    final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND_MULTIPLE);
    emailIntent.setType(TEXT_HTML);
    emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[]{emailTo});
    emailIntent.putExtra(android.content.Intent.EXTRA_CC, new String[]{emailCC});
    emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);

    ArrayList<Uri> fileUris = new ArrayList<Uri>();
    for (String file : filePaths) {
        File fileIn = new File(file);
        Uri uri = Uri.fromFile(fileIn);
        fileUris.add(uri);
    }

    emailIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, fileUris);
    context.startActivity(Intent.createChooser(emailIntent, context.getString(R.string.send_by_email))); }

【问题讨论】:

  • 你能分享一下你的 html 文件是什么样子的吗?

标签: android html file email android-intent


【解决方案1】:

任何需要进入身体的东西都可以通过这种方式设置到你的意图中,例如将您的构建版本名称作为电子邮件的正文。您可以将其替换为您的 html 内容。从未亲自尝试过,您可能需要一些转换。

emailIntent.putExtra(Intent.EXTRA_TEXT, BuildConfig.VERSION_NAME);

【讨论】:

  • 它只显示文件的路径,有没有办法把整个html文件作为邮件正文?
  • 我假设您正在这样做。 emailIntent.putExtra(Intent.EXTRA_TEXT, fileUris);如果你这样做,你会得到你所看到的。您需要以文本格式获取文件的内容并添加它。
  • 嘿,这行得通,但我将整个 HTML 代码作为正文,我想要的是内容。我的意思是渲染的 HTML 文件。你能帮我进一步吗?
  • 如果它有效,你能接受这个答案并问另一个吗?
猜你喜欢
  • 2018-08-06
  • 2018-09-08
  • 2018-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-08
相关资源
最近更新 更多