我在从 Android 应用程序发送电子邮件时遇到问题。它间歇性地工作且不可靠。大多数时候,它卡在发件箱中,处于“正在发送……”状态。
我知道这是一个经常重复的问题,但我再次问这个问题,因为我已经尝试了很多代码变体,但它们似乎都不能可靠地工作。一些论坛还说这是GMail应用程序的错;我已经尝试过“刷新发件箱文件夹”和“禁用和启用同步”,但似乎没有任何效果。
这是我的代码:
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();
- 有人可以解释为什么这行不通吗?
- setType() 的值应该是多少?我在哪里可以找到可用值的列表?
- 是因为我想发送一个 .zip 文件吗?如果是这样,其他存档格式会起作用吗?
非常感谢你的帮助。
编辑:我怀疑问题出在文件格式(.zip)上。其他文件格式工作得很好。我已经放弃了这种方法,转而使用我自己的服务器侦听数据的 TCP。