public final class MediaBrowser
extends Object
java.lang.Object | |
↳ | android.media.browse.MediaBrowser |
浏览MediaBrowserService链接提供的媒体内容。
该对象不是线程安全的。 所有调用都应该在构建浏览器的线程上进行。
这些是可通过被用作额外的数据目前的标准字段 subscribe(String, Bundle, SubscriptionCallback)
, unsubscribe(String, SubscriptionCallback)
,和 onChildrenLoaded(String, List, Bundle)
。
Nested classes |
|
---|---|
class |
MediaBrowser.ConnectionCallback 与连接相关的事件的回调。 |
class |
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) 从连接的服务中检索特定的 |
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
|
String EXTRA_PAGE
用作int外部字段来表示要订阅的页码。 EXTRA_PAGE
的值应该大于或等于0。
也可以看看:
常量值:“android.media.browse.extra.PAGE”
String EXTRA_PAGE_SIZE
用作int外部字段来表示页面中媒体项目的数量。 EXTRA_PAGE_SIZE
的值应该大于或等于1。
也可以看看:
常量值:“android.media.browse.extra.PAGE_SIZE”
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. |
Bundle getExtras ()
获取媒体服务的任何附加内容。
Returns | |
---|---|
Bundle |
Throws | |
---|---|
IllegalStateException |
if not connected. |
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. |
String getRoot ()
获取根ID。
请注意,当浏览器断开连接时,根ID可能会变为无效或更改。
Returns | |
---|---|
String |
Throws | |
---|---|
IllegalStateException |
if not connected. |
ComponentName getServiceComponent ()
获取媒体浏览器连接到的服务组件。
Returns | |
---|---|
ComponentName |
MediaSession.Token getSessionToken ()
获取与媒体浏览器关联的媒体会话令牌。
请注意,当浏览器断开连接时,会话令牌可能会失效或发生更改。
Returns | |
---|---|
MediaSession.Token |
The session token for the browser, never null. |
Throws | |
---|---|
IllegalStateException |
if not connected. |
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. |
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. |
void unsubscribe (String parentId)
取消订阅指定媒体ID的子项更改。
一旦此方法返回,查询回调将不再为与此ID相关联的结果调用。
Parameters | |
---|---|
parentId |
String : The id of the parent media item whose list of children will be unsubscribed. |
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. |