Android APIs
public final class

MediaMetadata

extends Object
implements Parcelable
java.lang.Object
   ↳ android.media.MediaMetadata

Class Overview

Contains metadata about an item, such as the title, artist, etc.

Summary

Nested Classes
class MediaMetadata.Builder Use to build MediaMetadata objects. 
Constants
String METADATA_KEY_ALBUM The album title for the media.
String METADATA_KEY_ALBUM_ART The artwork for the album of the media's original source as a Bitmap.
String METADATA_KEY_ALBUM_ARTIST The artist for the album of the media's original source.
String METADATA_KEY_ALBUM_ART_URI The artwork for the album of the media's original source as a Uri formatted String.
String METADATA_KEY_ART The artwork for the media as a Bitmap.
String METADATA_KEY_ARTIST The artist of the media.
String METADATA_KEY_ART_URI The artwork for the media as a Uri formatted String.
String METADATA_KEY_AUTHOR The author of the media.
String METADATA_KEY_COMPILATION The compilation status of the media.
String METADATA_KEY_COMPOSER The composer of the media.
String METADATA_KEY_DATE The date the media was created or published.
String METADATA_KEY_DISC_NUMBER The disc number for the media's original source.
String METADATA_KEY_DISPLAY_DESCRIPTION A description that is suitable for display to the user.
String METADATA_KEY_DISPLAY_ICON An icon or thumbnail that is suitable for display to the user.
String METADATA_KEY_DISPLAY_ICON_URI A Uri formatted String for an icon or thumbnail that is suitable for display to the user.
String METADATA_KEY_DISPLAY_SUBTITLE A subtitle that is suitable for display to the user.
String METADATA_KEY_DISPLAY_TITLE A title that is suitable for display to the user.
String METADATA_KEY_DURATION The duration of the media in ms.
String METADATA_KEY_GENRE The genre of the media.
String METADATA_KEY_MEDIA_ID A String key for identifying the content.
String METADATA_KEY_NUM_TRACKS The number of tracks in the media's original source.
String METADATA_KEY_RATING The overall rating for the media.
String METADATA_KEY_TITLE The title of the media.
String METADATA_KEY_TRACK_NUMBER The track number for the media.
String METADATA_KEY_USER_RATING The user's rating for the media.
String METADATA_KEY_WRITER The writer of the media.
String METADATA_KEY_YEAR The year the media was created or published as a long.
[Expand]
Inherited Constants
From interface android.os.Parcelable
Fields
public static final Creator<MediaMetadata> CREATOR
Public Methods
boolean containsKey(String key)
Returns true if the given key is contained in the metadata
int describeContents()
Describe the kinds of special objects contained in this Parcelable's marshalled representation.
Bitmap getBitmap(String key)
Returns a Bitmap for the given key or null if no bitmap exists for the given key.
MediaDescription getDescription()
Returns a simple description of this metadata for display purposes.
long getLong(String key)
Returns the value associated with the given key, or 0L if no long exists for the given key.
Rating getRating(String key)
Returns a Rating for the given key or null if no rating exists for the given key.
String getString(String key)
Returns the text value associated with the given key as a String, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
CharSequence getText(String key)
Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.
Set<String> keySet()
Returns a Set containing the Strings used as keys in this metadata.
int size()
Returns the number of fields in this metadata.
void writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel.
[Expand]
Inherited Methods
From class java.lang.Object
From interface android.os.Parcelable

Constants

public static final String METADATA_KEY_ALBUM

Added in API level 21

The album title for the media.

Constant Value: "android.media.metadata.ALBUM"

public static final String METADATA_KEY_ALBUM_ART

Added in API level 21

The artwork for the album of the media's original source as a Bitmap.

The artwork should be relatively small and may be scaled down by the system if it is too large. For higher resolution artwork METADATA_KEY_ALBUM_ART_URI should be used instead.

Constant Value: "android.media.metadata.ALBUM_ART"

public static final String METADATA_KEY_ALBUM_ARTIST

Added in API level 21

The artist for the album of the media's original source.

Constant Value: "android.media.metadata.ALBUM_ARTIST"

public static final String METADATA_KEY_ALBUM_ART_URI

Added in API level 21

The artwork for the album of the media's original source as a Uri formatted String. The artwork can be loaded using a combination of openInputStream(Uri) and decodeStream(InputStream).

For the best results, Uris should use the content:// style and support EXTRA_SIZE for retrieving scaled artwork through openTypedAssetFileDescriptor(Uri, String, Bundle).

Constant Value: "android.media.metadata.ALBUM_ART_URI"

public static final String METADATA_KEY_ART

Added in API level 21

The artwork for the media as a Bitmap.

The artwork should be relatively small and may be scaled down by the system if it is too large. For higher resolution artwork METADATA_KEY_ART_URI should be used instead.

Constant Value: "android.media.metadata.ART"

public static final String METADATA_KEY_ARTIST

Added in API level 21

The artist of the media.

Constant Value: "android.media.metadata.ARTIST"

public static final String METADATA_KEY_ART_URI

Added in API level 21

The artwork for the media as a Uri formatted String. The artwork can be loaded using a combination of openInputStream(Uri) and decodeStream(InputStream).

For the best results, Uris should use the content:// style and support EXTRA_SIZE for retrieving scaled artwork through openTypedAssetFileDescriptor(Uri, String, Bundle).

Constant Value: "android.media.metadata.ART_URI"

public static final String METADATA_KEY_AUTHOR

Added in API level 21

The author of the media.

Constant Value: "android.media.metadata.AUTHOR"

public static final String METADATA_KEY_COMPILATION

Added in API level 21

The compilation status of the media.

Constant Value: "android.media.metadata.COMPILATION"

public static final String METADATA_KEY_COMPOSER

Added in API level 21

The composer of the media.

Constant Value: "android.media.metadata.COMPOSER"

public static final String METADATA_KEY_DATE

Added in API level 21

The date the media was created or published. The format is unspecified but RFC 3339 is recommended.

Constant Value: "android.media.metadata.DATE"

public static final String METADATA_KEY_DISC_NUMBER

Added in API level 21

The disc number for the media's original source.

Constant Value: "android.media.metadata.DISC_NUMBER"

public static final String METADATA_KEY_DISPLAY_DESCRIPTION

Added in API level 21

A description that is suitable for display to the user. When displaying more information for media described by this metadata this should be preferred to other fields if present.

Constant Value: "android.media.metadata.DISPLAY_DESCRIPTION"

public static final String METADATA_KEY_DISPLAY_ICON

Added in API level 21

An icon or thumbnail that is suitable for display to the user. When displaying an icon for media described by this metadata this should be preferred to other fields if present. This must be a Bitmap.

The icon should be relatively small and may be scaled down by the system if it is too large. For higher resolution artwork METADATA_KEY_DISPLAY_ICON_URI should be used instead.

Constant Value: "android.media.metadata.DISPLAY_ICON"

public static final String METADATA_KEY_DISPLAY_ICON_URI

Added in API level 21

A Uri formatted String for an icon or thumbnail that is suitable for display to the user. When displaying more information for media described by this metadata the display description should be preferred to other fields when present. The icon can be loaded using a combination of openInputStream(Uri) and decodeStream(InputStream).

For the best results, Uris should use the content:// style and support EXTRA_SIZE for retrieving scaled artwork through openTypedAssetFileDescriptor(Uri, String, Bundle).

Constant Value: "android.media.metadata.DISPLAY_ICON_URI"

public static final String METADATA_KEY_DISPLAY_SUBTITLE

Added in API level 21

A subtitle that is suitable for display to the user. When displaying a second line for media described by this metadata this should be preferred to other fields if present.

Constant Value: "android.media.metadata.DISPLAY_SUBTITLE"

public static final String METADATA_KEY_DISPLAY_TITLE

Added in API level 21

A title that is suitable for display to the user. This will generally be the same as METADATA_KEY_TITLE but may differ for some formats. When displaying media described by this metadata this should be preferred if present.

Constant Value: "android.media.metadata.DISPLAY_TITLE"

public static final String METADATA_KEY_DURATION

Added in API level 21

The duration of the media in ms. A negative duration indicates that the duration is unknown (or infinite).

Constant Value: "android.media.metadata.DURATION"

public static final String METADATA_KEY_GENRE

Added in API level 21

The genre of the media.

Constant Value: "android.media.metadata.GENRE"

public static final String METADATA_KEY_MEDIA_ID

Added in API level 21

A String key for identifying the content. This value is specific to the service providing the content. If used, this should be a persistent unique key for the underlying content. It may be used with playFromMediaId(String, Bundle) to initiate playback when provided by a MediaBrowser connected to the same app.

Constant Value: "android.media.metadata.MEDIA_ID"

public static final String METADATA_KEY_NUM_TRACKS

Added in API level 21

The number of tracks in the media's original source.

Constant Value: "android.media.metadata.NUM_TRACKS"

public static final String METADATA_KEY_RATING

Added in API level 21

The overall rating for the media.

See Also
Constant Value: "android.media.metadata.RATING"

public static final String METADATA_KEY_TITLE

Added in API level 21

The title of the media.

Constant Value: "android.media.metadata.TITLE"

public static final String METADATA_KEY_TRACK_NUMBER

Added in API level 21

The track number for the media.

Constant Value: "android.media.metadata.TRACK_NUMBER"

public static final String METADATA_KEY_USER_RATING

Added in API level 21

The user's rating for the media.

See Also
Constant Value: "android.media.metadata.USER_RATING"

public static final String METADATA_KEY_WRITER

Added in API level 21

The writer of the media.

Constant Value: "android.media.metadata.WRITER"

public static final String METADATA_KEY_YEAR

Added in API level 21

The year the media was created or published as a long.

Constant Value: "android.media.metadata.YEAR"

Fields

public static final Creator<MediaMetadata> CREATOR

Added in API level 21

Public Methods

public boolean containsKey (String key)

Added in API level 21

Returns true if the given key is contained in the metadata

Parameters
key a String key
Returns
  • true if the key exists in this metadata, false otherwise

public int describeContents ()

Added in API level 21

Describe the kinds of special objects contained in this Parcelable's marshalled representation.

Returns
  • a bitmask indicating the set of special object types marshalled by the Parcelable.

public Bitmap getBitmap (String key)

Added in API level 21

Returns a Bitmap for the given key or null if no bitmap exists for the given key.

Parameters
key The key the value is stored under
Returns

public MediaDescription getDescription ()

Added in API level 21

Returns a simple description of this metadata for display purposes.

Returns
  • A simple description of this metadata.

public long getLong (String key)

Added in API level 21

Returns the value associated with the given key, or 0L if no long exists for the given key.

Parameters
key The key the value is stored under
Returns
  • a long value

public Rating getRating (String key)

Added in API level 21

Returns a Rating for the given key or null if no rating exists for the given key.

Parameters
key The key the value is stored under
Returns

public String getString (String key)

Added in API level 21

Returns the text value associated with the given key as a String, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key. This is equivalent to calling getText().toString() if the value is not null.

Parameters
key The key the value is stored under
Returns
  • a String value, or null

public CharSequence getText (String key)

Added in API level 21

Returns the value associated with the given key, or null if no mapping of the desired type exists for the given key or a null value is explicitly associated with the key.

Parameters
key The key the value is stored under
Returns
  • a CharSequence value, or null

public Set<String> keySet ()

Added in API level 21

Returns a Set containing the Strings used as keys in this metadata.

Returns
  • a Set of String keys

public int size ()

Added in API level 21

Returns the number of fields in this metadata.

Returns
  • The number of fields in the metadata.

public void writeToParcel (Parcel dest, int flags)

Added in API level 21

Flatten this object in to a Parcel.

Parameters
dest The Parcel in which the object should be written.
flags Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.