【发布时间】:2011-08-16 00:47:15
【问题描述】:
在我的 Android 应用中,我发送带有图片的电子邮件。
使用 Intent 系统发送,我可以做以下两件事之一:
1) 将类型指定为“message/rfc822”,以便选择器中仅显示电子邮件应用程序。
不便之处:我无法指定使用 EXTRA_STREAM 和 Uri 附加的图像的 MIME 类型。许多接收电子邮件应用程序(Gmail、Android 等)将其显示为附加到邮件的未知 binaru“blob”,不知道如何预览它,也不知道如何将其作为附件打开。
2) 将类型指定为(比如)“image/png”。图片已附加,Gmail 等电子邮件客户端可以预览它,并在适当的应用程序中打开附件。
不便之处:对于发送用户,我无法将用户必须在选择器中选择的应用程序列表减少到电子邮件应用程序,并且我的 Android 设备中显示了许多应用程序,其中大多数不是电子邮件应用程序,而不是什么我要。
是否无论如何要指定其“消息/rfc822”电子邮件 Intent 并在 Intent.EXTRA_STREAM 中指定通过 Uri 附加的数据的 MIME 类型?
顺便说一句:我从自己的 ContentProvider 提供文件,并且未调用 getType() 方法(用于确定文件 MIME 类型)。 query() 方法是但不请求文件类型,仅显示名称和文件大小。
谢谢
【问题讨论】: