Gmail不会在Android上从我的应用程序发送附件

时间:2011-02-17 19:41:02

标签: android

我正在尝试向我的Android应用添加电子邮件功能。我实际上要做的是通过使用ACTION_SEND意图发送一个包含表示某些应用程序数据的json字符串的文件。问题是,在我的设备上,使用Froyo的HTC Desire,Gmail会发送实际的电子邮件,但不会发送附件,即使我在Gmail应用程序启动时看到了附件。但是,在模拟器上,使用默认的电子邮件应用程序,这很好。如果我使用ASTRO文件管理器等应用程序直接从SD卡发送附件,并使用默认建议的mime类型,这也可以。  有人遇到类似的东西? 我的代码看起来像这样:

Intent sendIntent = new Intent(Intent.ACTION_SEND);
sendIntent.setType("application/sal");
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "shopping list");
Log.d(TAG, "attachment file: " + Uri.parse("file:/" + fileWithPath));
sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:/" + fileWithPath));

我也尝试了各种mime类型,例如application / json或text / plain,结果相同。

1 个答案:

答案 0 :(得分:1)

显然,在Android版Gmail上以文件://开头的URI存在一些问题,所以我找到了一些关于如何处理附件和文件的建议,这些附件和文件表示应用程序内部的内容提供程序,用于访问文件应该使用内容。可以在OI FileManager herehere中找到实现类似内容的示例。我查看了前面提到的源代码,并尝试实现我自己的内容提供程序来访问我想要附加的文件,并且它有效。 我希望这些信息对其他可能尝试这一点的人有所帮助。

相关问题