Android可用的mime-types?

Joa*_*ins 38 android mime-types

经过几次在线搜索后,我无法找到一个可以告诉我Android应用程序中不同类型媒体的每个现有mime类型的地方.

以下是我所知道的存在和工作:

对于文本

"text/plain"
Run Code Online (Sandbox Code Playgroud)

对于图像

"image/jpeg"
"image/bmp"
"image/gif"
"image/jpg"
"image/png"
Run Code Online (Sandbox Code Playgroud)

对于视频

"video/wav"
"video/mp4"
Run Code Online (Sandbox Code Playgroud)

这些是我拥有的并且知道工作,我缺少几个视频和声音类型文件.有没有人知道描述每个android mime类型的地方,或者你们曾经为这些不同类型的媒体使用过另一个mime类型吗?

编辑:

我在监视短信和短信的应用程序中使用它,在mms类型中管理其中的内容.我为8以上的每个版本运行的代码.

小智 32

这几天我做了一些搜索.

也许你应该阅读这些链接.


Com*_*are 11

我找不到一个可以告诉我Android应用程序中不同类型媒体的每个现有mime类型的地方

Play商店中有超过一百万个应用程序,以及其他地方的应用程序(例如,预装在设备上,适用于Android的Amazon AppStore).给定的设备将具有这些应用程序的某种组合.如果用户在平板电脑上运行Android 4.3+限制配置文件,则给定用户可以访问设备上某些应用的子集.

因此,在编译时无法知道给定的Android设备可以为ACTION_VIEW活动请求之类的东西支持哪些MIME类型.操作系统本身不支持这样的MIME类型 - 它们都是由应用程序提供的.

以下是我所知道的存在和工作:

某些设备可能预安装了支持这些MIME类型的应用程序.text/plain是"开箱即用"支持你的集合的可能性最小.

  • @IgorGanapolsky:我不知道这里的"注册"是什么意思.例如,您可以在`<intent-filter>`结构中使用所需的任何MIME类型.但是,你不能影响`MimeTypeMap`返回的内容,例如,那是硬编码的. (3认同)
  • @JoaoFilipeClementeMartins:这不会改变我的答案.设备为用户支持的MIME类型取决于设备和用户.您可以使用`PackageManager`和`queryIntentActivities()`等方法在运行时确定当前设备上当前用户支持和不支持的内容. (2认同)
  • @IgorGanapolsky:您的问题在于电子邮件发件人.Gmail只知道它所提供的MIME类型,在没有发件人指定的MIME类型的情况下,可能默认为基于文件扩展名的内容.如果发件人将JSON文件作为附件以"application/json"作为MIME类型附加,那不是Gmail的错误,Gmail只会知道将其视为`application/json`.这个故事的道德:MIME类型只有在它们是标准的或它们来自您控制的Web服务器时才有用. (2认同)

小智 9

我知道我迟到了,但我在这里找到了 mime 类型的完整列表: https: //android.googlesource.com/platform/external/mime-support/+/9817b71a54a2ee8b691c1dfa937c0f9b16b3473c/mime.types


小智 7

您可以使用Android(java版本)中现有的映射

String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(ext.toLowerCase());
Run Code Online (Sandbox Code Playgroud)