belongs to Maven artifact com.android.support:support-media-compat:28.0.0-alpha1
MediaBrowserCompat
public
final
class
MediaBrowserCompat
extends Object
java.lang.Object | |
↳ | android.support.v4.media.MediaBrowserCompat |
Browses media content offered by a MediaBrowserServiceCompat
.
This object is not thread-safe. All calls should happen on the thread on which the browser was constructed.
All callback methods will be called from the thread on which the browser was constructed.
Developer Guides
For information about building your media application, read the Media Apps developer guide.
Summary
Nested classes | |
---|---|
class |
MediaBrowserCompat.ConnectionCallback
Callbacks for connection related events. |
class |
MediaBrowserCompat.CustomActionCallback
Callback for receiving the result of |
class |
MediaBrowserCompat.ItemCallback
Callback for receiving the result of |
class |
MediaBrowserCompat.MediaItem
A class with information on a single media item for use in browsing/searching media. |
class |
MediaBrowserCompat.SearchCallback
Callback for receiving the result of |
class |
MediaBrowserCompat.SubscriptionCallback
Callbacks for subscription related events. |
Constants | |
---|---|
String |
CUSTOM_ACTION_DOWNLOAD
Predefined custom action to ask the connected service to download a specific
|
String |
CUSTOM_ACTION_REMOVE_DOWNLOADED_FILE
Predefined custom action to ask the connected service to remove the downloaded file of
|
String |
EXTRA_DOWNLOAD_PROGRESS
Used as a float extra field to denote the current progress during download. |
String |
EXTRA_MEDIA_ID
Used as a string extra field to denote the target |
String |
EXTRA_PAGE
Used as an int extra field to denote the page number to subscribe. |
String |
EXTRA_PAGE_SIZE
Used as an int extra field to denote the number of media items in a page. |
Public constructors | |
---|---|
MediaBrowserCompat(Context context, ComponentName serviceComponent, MediaBrowserCompat.ConnectionCallback callback, Bundle rootHints)
Creates a media browser for the specified media browse service. |
Public methods | |
---|---|
void
|
connect()
Connects to the media browse service. |
void
|
disconnect()
Disconnects from the media browse service. |
Bundle
|
getExtras()
Gets any extras for the media service. |
void
|
getItem(String mediaId, MediaBrowserCompat.ItemCallback cb)
Retrieves a specific |
String
|
getRoot()
Gets the root id. |
ComponentName
|
getServiceComponent()
Gets the service component that the media browser is connected to. |
MediaSessionCompat.Token
|
getSessionToken()
Gets the media session token associated with the media browser. |
boolean
|
isConnected()
Returns whether the browser is connected to the service. |
void
|
search(String query, Bundle extras, MediaBrowserCompat.SearchCallback callback)
Searches |
void
|
sendCustomAction(String action, Bundle extras, MediaBrowserCompat.CustomActionCallback callback)
Sends a custom action to the connected service. |
void
|
subscribe(String parentId, Bundle options, MediaBrowserCompat.SubscriptionCallback callback)
Queries with service-specific arguments for information about the media items that are contained within the specified id and subscribes to receive updates when they change. |
void
|
subscribe(String parentId, MediaBrowserCompat.SubscriptionCallback callback)
Queries for information about the media items that are contained within the specified id and subscribes to receive updates when they change. |
void
|
unsubscribe(String parentId)
Unsubscribes for changes to the children of the specified media id. |
void
|
unsubscribe(String parentId, MediaBrowserCompat.SubscriptionCallback callback)
Unsubscribes for changes to the children of the specified media id. |
Inherited methods | |
---|---|
From
class
java.lang.Object
|
Constants
CUSTOM_ACTION_DOWNLOAD
String CUSTOM_ACTION_DOWNLOAD
Predefined custom action to ask the connected service to download a specific
MediaBrowserCompat.MediaItem
for offline playback. The id of the media item must be passed in an extra
bundle. The download progress might be delivered to the browser via
onProgressUpdate(String, Bundle, Bundle)
.
Constant Value: "android.support.v4.media.action.DOWNLOAD"
CUSTOM_ACTION_REMOVE_DOWNLOADED_FILE
String CUSTOM_ACTION_REMOVE_DOWNLOADED_FILE
Predefined custom action to ask the connected service to remove the downloaded file of
MediaBrowserCompat.MediaItem
by the download
action. The id of the
media item must be passed in an extra bundle.
See also:
Constant Value: "android.support.v4.media.action.REMOVE_DOWNLOADED_FILE"
EXTRA_DOWNLOAD_PROGRESS
String EXTRA_DOWNLOAD_PROGRESS
Used as a float extra field to denote the current progress during download. The value of this field must be a float number within [0.0, 1.0].
Constant Value: "android.media.browse.extra.DOWNLOAD_PROGRESS"
EXTRA_MEDIA_ID
String EXTRA_MEDIA_ID
Used as a string extra field to denote the target MediaBrowserCompat.MediaItem
.
Constant Value: "android.media.browse.extra.MEDIA_ID"
EXTRA_PAGE
String EXTRA_PAGE
Used as an int extra field to denote the page number to subscribe.
The value of EXTRA_PAGE
should be greater than or equal to 1.
Constant Value: "android.media.browse.extra.PAGE"
EXTRA_PAGE_SIZE
String EXTRA_PAGE_SIZE
Used as an int extra field to denote the number of media items in a page.
The value of EXTRA_PAGE_SIZE
should be greater than or equal to 1.
Constant Value: "android.media.browse.extra.PAGE_SIZE"
Public constructors
MediaBrowserCompat
MediaBrowserCompat (Context context, ComponentName serviceComponent, MediaBrowserCompat.ConnectionCallback callback, Bundle rootHints)
Creates a media browser for the specified media browse service.
Parameters | |
---|---|
context |
Context : The context. |
serviceComponent |
ComponentName : The component name of the media browse service. |
callback |
MediaBrowserCompat.ConnectionCallback : The connection callback. |
rootHints |
Bundle : An optional bundle of service-specific arguments to send
to the media browse service when connecting and retrieving the root id
for browsing, or null if none. The contents of this bundle may affect
the information returned when browsing. |
See also:
Public methods
connect
void connect ()
Connects to the media browse service.
The connection callback specified in the constructor will be invoked when the connection completes or fails.
disconnect
void disconnect ()
Disconnects from the media browse service. After this, no more callbacks will be received.
getExtras
Bundle getExtras ()
Gets any extras for the media service.
Returns | |
---|---|
Bundle |
Throws | |
---|---|
IllegalStateException |
if not connected. |
getItem
void getItem (String mediaId, MediaBrowserCompat.ItemCallback cb)
Retrieves a specific MediaBrowserCompat.MediaItem
from the connected service. Not
all services may support this, so falling back to subscribing to the
parent's id should be used when unavailable.
Parameters | |
---|---|
mediaId |
String : The id of the item to retrieve. |
cb |
MediaBrowserCompat.ItemCallback : The callback to receive the result on.
|
getRoot
String getRoot ()
Gets the root id.
Note that the root id may become invalid or change when when the browser is disconnected.
Returns | |
---|---|
String |
Throws | |
---|---|
IllegalStateException |
if not connected. |
getServiceComponent
ComponentName getServiceComponent ()
Gets the service component that the media browser is connected to.
Returns | |
---|---|
ComponentName |
getSessionToken
MediaSessionCompat.Token getSessionToken ()
Gets the media session token associated with the media browser.
Note that the session token may become invalid or change when when the browser is disconnected.
Returns | |
---|---|
MediaSessionCompat.Token |
The session token for the browser, never null. |
Throws | |
---|---|
IllegalStateException |
if not connected. |
isConnected
boolean isConnected ()
Returns whether the browser is connected to the service.
Returns | |
---|---|
boolean |
search
void search (String query, Bundle extras, MediaBrowserCompat.SearchCallback callback)
Searches media items
from the connected service. Not all services may
support this, and onError(String, Bundle)
will be called if not implemented.
Parameters | |
---|---|
query |
String : The search query that contains keywords separated by space. Should not be an
empty string. |
extras |
Bundle : The bundle of service-specific arguments to send to the media browser service.
The contents of this bundle may affect the search result. |
callback |
MediaBrowserCompat.SearchCallback : The callback to receive the search result. Must be non-null. |
Throws | |
---|---|
IllegalStateException |
if the browser is not connected to the media browser service. |
sendCustomAction
void sendCustomAction (String action, Bundle extras, MediaBrowserCompat.CustomActionCallback callback)
Sends a custom action to the connected service. If the service doesn't support the given
action, onError(String, Bundle, Bundle)
will be called.
Parameters | |
---|---|
action |
String : The custom action that will be sent to the connected service. Should not be an
empty string. |
extras |
Bundle : The bundle of service-specific arguments to send to the media browser service. |
callback |
MediaBrowserCompat.CustomActionCallback : The callback to receive the result of the custom action. |
subscribe
void subscribe (String parentId, Bundle options, MediaBrowserCompat.SubscriptionCallback callback)
Queries with service-specific arguments for information about the media items that are contained within the specified id and subscribes to receive updates when they change.
The list of subscriptions is maintained even when not connected and is restored after the reconnection. It is ok to subscribe while not connected but the results will not be returned until the connection completes.
If the id is already subscribed with a different callback then the new callback will replace the previous one and the child data will be reloaded.
Parameters | |
---|---|
parentId |
String : The id of the parent media item whose list of children
will be subscribed. |
options |
Bundle : A bundle of service-specific arguments to send to the media
browse service. The contents of this bundle may affect the
information returned when browsing. |
callback |
MediaBrowserCompat.SubscriptionCallback : The callback to receive the list of children.
|
subscribe
void subscribe (String parentId, MediaBrowserCompat.SubscriptionCallback callback)
Queries for information about the media items that are contained within the specified id and subscribes to receive updates when they change.
The list of subscriptions is maintained even when not connected and is restored after the reconnection. It is ok to subscribe while not connected but the results will not be returned until the connection completes.
If the id is already subscribed with a different callback then the new callback will replace the previous one and the child data will be reloaded.
Parameters | |
---|---|
parentId |
String : The id of the parent media item whose list of children
will be subscribed. |
callback |
MediaBrowserCompat.SubscriptionCallback : The callback to receive the list of children.
|
unsubscribe
void unsubscribe (String parentId)
Unsubscribes for changes to the children of the specified media id.
The query callback will no longer be invoked for results associated with this id once this method returns.
Parameters | |
---|---|
parentId |
String : The id of the parent media item whose list of children
will be unsubscribed.
|
unsubscribe
void unsubscribe (String parentId, MediaBrowserCompat.SubscriptionCallback callback)
Unsubscribes for changes to the children of the specified media id.
The query callback will no longer be invoked for results associated with this id once this method returns.
Parameters | |
---|---|
parentId |
String : The id of the parent media item whose list of children
will be unsubscribed. |
callback |
MediaBrowserCompat.SubscriptionCallback : A callback sent to the media browse service to subscribe.
|
Classes
- AudioAttributesCompat
- AudioAttributesCompat.Builder
- MediaBrowserCompat
- MediaBrowserCompat.ConnectionCallback
- MediaBrowserCompat.CustomActionCallback
- MediaBrowserCompat.ItemCallback
- MediaBrowserCompat.MediaItem
- MediaBrowserCompat.SearchCallback
- MediaBrowserCompat.SubscriptionCallback
- MediaBrowserServiceCompat
- MediaBrowserServiceCompat.BrowserRoot
- MediaBrowserServiceCompat.Result
- MediaDescriptionCompat
- MediaDescriptionCompat.Builder
- MediaMetadataCompat
- MediaMetadataCompat.Builder
- RatingCompat
- VolumeProviderCompat
- VolumeProviderCompat.Callback
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2024-04-11 UTC.