Android - 从应用程序发送电子邮件

时间:2011-04-15 17:05:12

标签: android email-attachments

我在从Android应用发送电子邮件时遇到问题。它间歇性地且不可靠地工作。大多数时候,它处于“发送...”状态的发件箱中。

我知道这是一个经常重复的问题,但是我再次问它,因为我在代码中尝试了很多变化,而且它们似乎都没有可靠的工作。一些论坛也说这是GMail app的错;我试过'刷新发件箱文件夹'和'禁用并启用同步',但似乎没有什么可以做的。

这是我的代码:

Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "subject");
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, "emailText");
emailIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
emailIntent.setType("application/zip");
emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File("/mnt/sdcard/myFolder/myFile.zip")));
startActivity(Intent.createChooser(emailIntent, "send email"));
finish();
  1. 有人可以解释为什么这不起作用?
  2. setType()的值应该是多少?我在哪里可以找到可用值列表?
  3. 是因为我正在尝试发送.zip文件吗?如果是这样,其他存档格式是否有效?
  4. 非常感谢你的帮助。

    编辑:我怀疑问题是文件格式(.zip)。其他文件格式工作得很好。我已经放弃了这种方法,并使用我自己的服务器监听数据。

1 个答案:

答案 0 :(得分:0)

它可能卡在发送状态的原因是因为取决于zip文件的 SIZE ,它必须将其添加到电子邮件中..如果它太大(超过30 MB) )它可能会挂起并被谷歌拒绝,因为谷歌不允许在电子邮件中发送超过30MB的内容。这只是一个猜测,但尝试发送一个小文件,看看是否是这种情况。