Which MIME types does Android support out of the box?
Since that's your immediate question, let's answer that first (though it's not exactly the right question for your MMS usecase).
To know the MIME types supported by Android itself (not considering additional apps), you can use this process:
Consult the list Supported media formats from the official Android documentation.
For each media format and each of its possible container formats, find the associated MIME types from the official IANA Media Types list.
Since there are some unregistered MIME types in use in practice, including by Android, additionally consult the list of MIME types known to the Android platform to convert the supported media formats. For example, the Matroska video container format (.mkv
files) appears only in that list, not in the IANA list.
Which MIME types might you encounter in MMS?
tell me every existent mime type for different types of media in android applications. […] I am using this in an application that monitors SMS and MMS and in the MMS type manages the content inside it.
For your case, the MMS standard will tell you what MIME types can be used for its content. And it seems that, like e-mail, MMS does not restrict what MIME types its content can be. For example, one supplier of MMS solutions tells that it will simply pass content with unknown MIME types to the network carrier:
If the format is not listed below that means it still gets accepted on the API, but […] it may get delivered to the carrier or may not depending on the size of the content. (source)
Since applications can define their own MIME types, including types starting with prs.
and x.
that cannot be registered at IANA, you cannot know beforehand which MIME types you will encounter.
So for practical purposes, it is the safest approach if your application can deal with all MIME types supported by the Android platform by default – see above for the list. And then handle everything else (added by apps) in a generic manner.