Class MediaSessionConnector.DefaultMediaMetadataProvider
- java.lang.Object
-
- com.google.android.exoplayer2.ext.mediasession.MediaSessionConnector.DefaultMediaMetadataProvider
-
- All Implemented Interfaces:
MediaSessionConnector.MediaMetadataProvider
- Enclosing class:
- MediaSessionConnector
public static final class MediaSessionConnector.DefaultMediaMetadataProvider extends Object implements MediaSessionConnector.MediaMetadataProvider
Provides a defaultMediaMetadataCompat
with properties and extras taken from theMediaDescriptionCompat
of theMediaSessionCompat.QueueItem
of the active queue item.
-
-
Constructor Summary
Constructors Constructor Description DefaultMediaMetadataProvider(android.support.v4.media.session.MediaControllerCompat mediaController, String metadataExtrasPrefix)
Creates a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description android.support.v4.media.MediaMetadataCompat
getMetadata(Player player)
Gets theMediaMetadataCompat
to be published to the session.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.google.android.exoplayer2.ext.mediasession.MediaSessionConnector.MediaMetadataProvider
sameAs
-
-
-
-
Constructor Detail
-
DefaultMediaMetadataProvider
public DefaultMediaMetadataProvider(android.support.v4.media.session.MediaControllerCompat mediaController, @Nullable String metadataExtrasPrefix)
Creates a new instance.- Parameters:
mediaController
- TheMediaControllerCompat
.metadataExtrasPrefix
- A string to prefix extra keys which are propagated from the active queue item to the session metadata.
-
-
Method Detail
-
getMetadata
public android.support.v4.media.MediaMetadataCompat getMetadata(Player player)
Description copied from interface:MediaSessionConnector.MediaMetadataProvider
Gets theMediaMetadataCompat
to be published to the session.An app may need to load metadata resources like artwork bitmaps asynchronously. In such a case the app should return a
MediaMetadataCompat
object that does not contain these resources as a placeholder. The app should start an asynchronous operation to download the bitmap and put it into a cache. Finally, the app should callMediaSessionConnector.invalidateMediaSessionMetadata()
. This causes this callback to be called again and the app can now return aMediaMetadataCompat
object with all the resources included.- Specified by:
getMetadata
in interfaceMediaSessionConnector.MediaMetadataProvider
- Parameters:
player
- The player connected to the media session.- Returns:
- The
MediaMetadataCompat
to be published to the session.
-
-