64

我正在搜索如何从我的应用程序发送电子邮件,我遇到了这个主题:

如何从我的 Android 应用程序发送电子邮件

它解决了向他的操作发送添加类型的问题:

i.setType("message/rfc822");

这也适用于我,我可以发送我的电子邮件,这很棒。我只是想知道我还能在那里设置什么。

我知道,如果我不设置任何内容,它将显示包含所有可用选项的列表。我想强迫用户使用我选择的任何选项来分享它。我可以探索这个以迫使用户以我想要的任何方式分享吗?

4

4 回答 4

148

这可能为时已晚,但作为初学者,这是我对您上述问题的尝试:) 希望这对您有所帮助,myIntent.setType(String mimeType)输入参数表示您希望从触发意图(此处为 myIntent实例)中获得的 MIME 类型数据。
通过使用以下 MIME 类型之一,您可以强制用户选择您想要的选项。
请注意,android 中的所有 MIME 类型都是小写的。

以下是您可以设置的常见 MIME 类型列表setType()

image/jpeg
audio/mpeg4-generic
text/html
audio/mpeg
audio/aac
audio/wav
audio/ogg
audio/midi
audio/x-ms-wma
video/mp4
video/x-msvideo
video/x-ms-wmv
image/png
image/jpeg
image/gif
.xml ->text/xml
.txt -> text/plain
.cfg -> text/plain
.csv -> text/plain
.conf -> text/plain
.rc -> text/plain
.htm -> text/html
.html -> text/html
.pdf -> application/pdf
.apk -> application/vnd.android.package-archive
于 2014-06-10T06:53:22.230 回答
6

我认为您在广播共享意图时不应该强迫任何类型的行为。

i.setType("message/rfc822"); 

这将设置您的意图的 MIME 类型。我想,充其量,您必须知道您打算使用哪种 MIME 类型来共享您的内容(例如 Facebook)答案,并确保该应用程序是唯一可以回答您的意图的应用程序。

于 2012-10-25T09:57:45.590 回答
4

根据 Android API 文档,setType 的参数是表示 MIME 类型的字符串。请看一下http://developer.android.com/reference/android/content/Intent.html#setType(java.lang.String)

然后涉及到可以使用任何 MIME 类型来设置共享意图内容类型。您可以在 iana.org 站点找到完整列表,其中列出了 MIME 类型的完整列表:http ://www.iana.org/assignments/media-types/media-types.xhtml

我希望这有帮助。

于 2015-11-19T23:42:03.383 回答
2

您可能需要检查此链接: http: //developer.android.com/reference/android/content/Intent.html#setType(java.lang.String)

基本上它的作用是,它允许您设置用于发送意图的数据类型。

您可能还想查看一个现有问题:Android - Intent.setType() arguments

于 2012-10-25T09:51:35.510 回答