Most visited

Recently visited

Added in API level 21

MediaBrowser

public final class MediaBrowser
extends Object

java.lang.Object
   ↳ android.media.browse.MediaBrowser


浏览MediaBrowserService链接提供的媒体内容。

该对象不是线程安全的。 所有调用都应该在构建浏览器的线程上进行。

Standard Extra Data

这些是可通过被用作额外的数据目前的标准字段 subscribe(String, Bundle, SubscriptionCallback)unsubscribe(String, SubscriptionCallback) ,和 onChildrenLoaded(String, List, Bundle)

Summary

Nested classes

class MediaBrowser.ConnectionCallback

与连接相关的事件的回调。

class MediaBrowser.ItemCallback

回调接收getItem(String, MediaBrowser.ItemCallback)的结果。

class MediaBrowser.MediaItem

一个包含单个媒体项目信息的类,用于浏览媒体。

class MediaBrowser.SubscriptionCallback

订阅相关事件的回调。

Constants

String EXTRA_PAGE

用作int外部字段来表示要订阅的页码。

String EXTRA_PAGE_SIZE

用作int外部字段来表示页面中媒体项目的数量。

Public constructors

MediaBrowser(Context context, ComponentName serviceComponent, MediaBrowser.ConnectionCallback callback, Bundle rootHints)

为指定的媒体浏览服务创建媒体浏览器。

Public methods

void connect()

连接到媒体浏览服务。

void disconnect()

断开与媒体浏览服务的连接。

Bundle getExtras()

获取媒体服务的任何附加内容。

void getItem(String mediaId, MediaBrowser.ItemCallback cb)

从连接的服务中检索特定的 MediaBrowser.MediaItem

String getRoot()

获取根ID。

ComponentName getServiceComponent()

获取媒体浏览器连接到的服务组件。

MediaSession.Token getSessionToken()

获取与媒体浏览器关联的媒体会话令牌。

boolean isConnected()

返回浏览器是否连接到服务。

void subscribe(String parentId, Bundle options, MediaBrowser.SubscriptionCallback callback)

查询具有特定于服务的参数以获取有关指定标识中包含的媒体项目的信息,并订阅它们在更改时接收更新。

void subscribe(String parentId, MediaBrowser.SubscriptionCallback callback)

查询有关指定ID中包含的媒体项目的信息,并订阅它们在更改时接收更新。

void unsubscribe(String parentId)

取消订阅指定媒体ID的子项更改。

void unsubscribe(String parentId, MediaBrowser.SubscriptionCallback callback)

通过回调取消订阅指定媒体ID的子项的更改。

Inherited methods

From class java.lang.Object

Constants

EXTRA_PAGE

Added in API level 24
String EXTRA_PAGE

用作int外部字段来表示要订阅的页码。 EXTRA_PAGE的值应该大于或等于0。

也可以看看:

常量值:“android.media.browse.extra.PAGE”

EXTRA_PAGE_SIZE

Added in API level 24
String EXTRA_PAGE_SIZE

用作int外部字段来表示页面中媒体项目的数量。 EXTRA_PAGE_SIZE的值应该大于或等于1。

也可以看看:

常量值:“android.media.browse.extra.PAGE_SIZE”

Public constructors

MediaBrowser

Added in API level 21
MediaBrowser (Context context, 
                ComponentName serviceComponent, 
                MediaBrowser.ConnectionCallback callback, 
                Bundle rootHints)

为指定的媒体浏览服务创建媒体浏览器。

Parameters
context Context: The context.
serviceComponent ComponentName: The component name of the media browse service.
callback MediaBrowser.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.

也可以看看:

Public methods

connect

Added in API level 21
void connect ()

连接到媒体浏览服务。

连接完成或失败时,构造函数中指定的连接回调将被调用。

disconnect

Added in API level 21
void disconnect ()

断开与媒体浏览服务的连接。 在此之后,将不会收到更多回调。

getExtras

Added in API level 21
Bundle getExtras ()

获取媒体服务的任何附加内容。

Returns
Bundle
Throws
IllegalStateException if not connected.

getItem

Added in API level 23
void getItem (String mediaId, 
                MediaBrowser.ItemCallback cb)

从连接的服务中检索特定的MediaBrowser.MediaItem 并非所有的服务都可以支持这一点,所以当不可用时应该使用订阅父母的ID。

Parameters
mediaId String: The id of the item to retrieve.
cb MediaBrowser.ItemCallback: The callback to receive the result on.

getRoot

Added in API level 21
String getRoot ()

获取根ID。

请注意,当浏览器断开连接时,根ID可能会变为无效或更改。

Returns
String
Throws
IllegalStateException if not connected.

getServiceComponent

Added in API level 21
ComponentName getServiceComponent ()

获取媒体浏览器连接到的服务组件。

Returns
ComponentName

getSessionToken

Added in API level 21
MediaSession.Token getSessionToken ()

获取与媒体浏览器关联的媒体会话令牌。

请注意,当浏览器断开连接时,会话令牌可能会失效或发生更改。

Returns
MediaSession.Token The session token for the browser, never null.
Throws
IllegalStateException if not connected.

isConnected

Added in API level 21
boolean isConnected ()

返回浏览器是否连接到服务。

Returns
boolean

subscribe

Added in API level 24
void subscribe (String parentId, 
                Bundle options, 
                MediaBrowser.SubscriptionCallback callback)

查询具有特定于服务的参数以获取有关指定标识中包含的媒体项目的信息,并订阅它们在更改时接收更新。

即使未连接,订阅列表也会保留,并在重新连接后恢复。 在没有连接的情况下订阅是可以的,但直到连接完成后才会返回结果。

如果id已经订阅了不同的回调,那么新的回调将替换前一个回调,并且子数据将被重新加载。

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 MediaBrowser.SubscriptionCallback: The callback to receive the list of children.

subscribe

Added in API level 21
void subscribe (String parentId, 
                MediaBrowser.SubscriptionCallback callback)

查询有关指定ID中包含的媒体项目的信息,并订阅它们在更改时接收更新。

即使未连接,订阅列表也会保留,并在重新连接后恢复。 在没有连接的情况下订阅是可以的,但直到连接完成后才会返回结果。

如果id已经订阅了不同的回调,那么新的回调将替换前一个回调,并且子数据将被重新加载。

Parameters
parentId String: The id of the parent media item whose list of children will be subscribed.
callback MediaBrowser.SubscriptionCallback: The callback to receive the list of children.

unsubscribe

Added in API level 21
void unsubscribe (String parentId)

取消订阅指定媒体ID的子项更改。

一旦此方法返回,查询回调将不再为与此ID相关联的结果调用。

Parameters
parentId String: The id of the parent media item whose list of children will be unsubscribed.

unsubscribe

Added in API level 24
void unsubscribe (String parentId, 
                MediaBrowser.SubscriptionCallback callback)

通过回调取消订阅指定媒体ID的子项的更改。

一旦此方法返回,查询回调将不再为与此ID相关联的结果调用。

Parameters
parentId String: The id of the parent media item whose list of children will be unsubscribed.
callback MediaBrowser.SubscriptionCallback: A callback sent to the media browse service to subscribe.

Hooray!