From 43635ca3f7d12be129feba9256da9fb878e65bb2 Mon Sep 17 00:00:00 2001 From: Sungsoo Lim Date: Fri, 1 Jul 2016 11:23:06 +0900 Subject: [PATCH] MediaBrowserService: Add a constant for suggestion keywords EXTRA_SUGGESTION_KEYWORDS will be used for denoting specific keywords which will be considered when the browser service suggests media items. Bug: 28210241 Change-Id: I3831c0819f9d3ffa3fdd628031063069a5a62006 --- api/current.txt | 1 + api/system-current.txt | 1 + api/test-current.txt | 1 + .../android/service/media/MediaBrowserService.java | 26 ++++++++++++++++++++++ 4 files changed, 29 insertions(+) diff --git a/api/current.txt b/api/current.txt index 701b0b48f148..cbba5dd230e2 100644 --- a/api/current.txt +++ b/api/current.txt @@ -34697,6 +34697,7 @@ package android.service.media { field public static final java.lang.String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE"; field public static final java.lang.String EXTRA_RECENT = "android.service.media.extra.RECENT"; field public static final java.lang.String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED"; + field public static final java.lang.String EXTRA_SUGGESTION_KEYWORDS = "android.service.media.extra.SUGGESTION_KEYWORDS"; } public class MediaBrowserService.Result { diff --git a/api/system-current.txt b/api/system-current.txt index c5ee96dc8808..f5c96d0859f7 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -37445,6 +37445,7 @@ package android.service.media { field public static final java.lang.String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE"; field public static final java.lang.String EXTRA_RECENT = "android.service.media.extra.RECENT"; field public static final java.lang.String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED"; + field public static final java.lang.String EXTRA_SUGGESTION_KEYWORDS = "android.service.media.extra.SUGGESTION_KEYWORDS"; } public class MediaBrowserService.Result { diff --git a/api/test-current.txt b/api/test-current.txt index 9ec48ed255cb..e7636e80fb2c 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -34774,6 +34774,7 @@ package android.service.media { field public static final java.lang.String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE"; field public static final java.lang.String EXTRA_RECENT = "android.service.media.extra.RECENT"; field public static final java.lang.String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED"; + field public static final java.lang.String EXTRA_SUGGESTION_KEYWORDS = "android.service.media.extra.SUGGESTION_KEYWORDS"; } public class MediaBrowserService.Result { diff --git a/media/java/android/service/media/MediaBrowserService.java b/media/java/android/service/media/MediaBrowserService.java index 6321b7b9e287..a811ad0e5a1f 100644 --- a/media/java/android/service/media/MediaBrowserService.java +++ b/media/java/android/service/media/MediaBrowserService.java @@ -363,6 +363,7 @@ public abstract class MediaBrowserService extends Service { * @see BrowserRoot#EXTRA_RECENT * @see BrowserRoot#EXTRA_OFFLINE * @see BrowserRoot#EXTRA_SUGGESTED + * @see BrowserRoot#EXTRA_SUGGESTION_KEYWORDS */ public abstract @Nullable BrowserRoot onGetRoot(@NonNull String clientPackageName, int clientUid, @Nullable Bundle rootHints); @@ -500,6 +501,7 @@ public abstract class MediaBrowserService extends Service { * @see MediaBrowserService.BrowserRoot#EXTRA_RECENT * @see MediaBrowserService.BrowserRoot#EXTRA_OFFLINE * @see MediaBrowserService.BrowserRoot#EXTRA_SUGGESTED + * @see MediaBrowserService.BrowserRoot#EXTRA_SUGGESTION_KEYWORDS */ public final Bundle getBrowserRootHints() { if (mCurConnection == null) { @@ -735,6 +737,7 @@ public abstract class MediaBrowserService extends Service { * * @see #EXTRA_OFFLINE * @see #EXTRA_SUGGESTED + * @see #EXTRA_SUGGESTION_KEYWORDS */ public static final String EXTRA_RECENT = "android.service.media.extra.RECENT"; @@ -752,6 +755,7 @@ public abstract class MediaBrowserService extends Service { * * @see #EXTRA_RECENT * @see #EXTRA_SUGGESTED + * @see #EXTRA_SUGGESTION_KEYWORDS */ public static final String EXTRA_OFFLINE = "android.service.media.extra.OFFLINE"; @@ -770,9 +774,31 @@ public abstract class MediaBrowserService extends Service { * * @see #EXTRA_RECENT * @see #EXTRA_OFFLINE + * @see #EXTRA_SUGGESTION_KEYWORDS */ public static final String EXTRA_SUGGESTED = "android.service.media.extra.SUGGESTED"; + /** + * The lookup key for a string that indicates specific keywords which will be considered + * when the browser service suggests media items. + * + *

When creating a media browser for a given media browser service, this key can be + * supplied as a root hint together with {@link #EXTRA_SUGGESTED} for retrieving suggested + * media items related with the keywords. The list of media items passed in + * {@link android.media.browse.MediaBrowser.SubscriptionCallback#onChildrenLoaded(String, List)} + * is considered ordered by relevance, first being the top suggestion. + * If the media browser service can provide such media items, the implementation must return + * the key in the root hint when {@link #onGetRoot(String, int, Bundle)} is called back. + * + *

The root hint may contain multiple keys. + * + * @see #EXTRA_RECENT + * @see #EXTRA_OFFLINE + * @see #EXTRA_SUGGESTED + */ + public static final String EXTRA_SUGGESTION_KEYWORDS + = "android.service.media.extra.SUGGESTION_KEYWORDS"; + final private String mRootId; final private Bundle mExtras; -- 2.11.0