diff --git a/api/current.txt b/api/current.txt index f3c654cedee30..a80c27f82b23a 100644 --- a/api/current.txt +++ b/api/current.txt @@ -12324,6 +12324,7 @@ package android.media { public static class MediaRouter.RouteInfo { method public android.media.MediaRouter.RouteCategory getCategory(); + method public java.lang.CharSequence getDescription(); method public android.media.MediaRouter.RouteGroup getGroup(); method public android.graphics.drawable.Drawable getIconDrawable(); method public java.lang.CharSequence getName(); @@ -12362,6 +12363,7 @@ package android.media { public static class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo { method public android.media.RemoteControlClient getRemoteControlClient(); + method public void setDescription(java.lang.CharSequence); method public void setIconDrawable(android.graphics.drawable.Drawable); method public void setIconResource(int); method public void setName(java.lang.CharSequence); diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml index 50fad5fb2843c..f282188878f8c 100644 --- a/core/res/res/values/strings.xml +++ b/core/res/res/values/strings.xml @@ -3946,9 +3946,12 @@ System - + Bluetooth audio + + Wireless display + Done diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index 1cf453801ec0b..10da459d53673 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -857,6 +857,7 @@ + diff --git a/media/java/android/media/MediaRouter.java b/media/java/android/media/MediaRouter.java index 8b99de488aacf..e6693b9771c1d 100644 --- a/media/java/android/media/MediaRouter.java +++ b/media/java/android/media/MediaRouter.java @@ -187,6 +187,8 @@ public class MediaRouter { if (sStatic.mBluetoothA2dpRoute == null) { final RouteInfo info = new RouteInfo(sStatic.mSystemCategory); info.mName = mCurAudioRoutesInfo.mBluetoothName; + info.mDescription = sStatic.mResources.getText( + com.android.internal.R.string.bluetooth_a2dp_audio_route_name); info.mSupportedTypes = ROUTE_TYPE_LIVE_AUDIO; sStatic.mBluetoothA2dpRoute = info; addRouteStatic(sStatic.mBluetoothA2dpRoute); @@ -934,6 +936,8 @@ public class MediaRouter { newRoute.mEnabled = available; newRoute.mName = display.getFriendlyDisplayName(); + newRoute.mDescription = sStatic.mResources.getText( + com.android.internal.R.string.wireless_display_route_description); newRoute.mPresentationDisplay = choosePresentationDisplayForRoute(newRoute, sStatic.getAllPresentationDisplays()); @@ -1039,6 +1043,7 @@ public class MediaRouter { public static class RouteInfo { CharSequence mName; int mNameResId; + CharSequence mDescription; private CharSequence mStatus; int mSupportedTypes; RouteGroup mGroup; @@ -1098,24 +1103,34 @@ public class MediaRouter { } /** - * @return The user-friendly name of a media route. This is the string presented + * Gets the user-visible name of the route. + *

+ * The route name identifies the destination represented by the route. + * It may be a user-supplied name, an alias, or device serial number. + *

+ * + * @return The user-visible name of a media route. This is the string presented * to users who may select this as the active route. */ public CharSequence getName() { return getName(sStatic.mResources); } - + /** - * Return the properly localized/resource selected name of this route. - * + * Return the properly localized/resource user-visible name of this route. + *

+ * The route name identifies the destination represented by the route. + * It may be a user-supplied name, an alias, or device serial number. + *

+ * * @param context Context used to resolve the correct configuration to load - * @return The user-friendly name of the media route. This is the string presented + * @return The user-visible name of a media route. This is the string presented * to users who may select this as the active route. */ public CharSequence getName(Context context) { return getName(context.getResources()); } - + CharSequence getName(Resources res) { if (mNameResId != 0) { return mName = res.getText(mNameResId); @@ -1124,7 +1139,20 @@ public class MediaRouter { } /** - * @return The user-friendly status for a media route. This may include a description + * Gets the user-visible description of the route. + *

+ * The route description describes the kind of destination represented by the route. + * It may be a user-supplied string, a model number or brand of device. + *

+ * + * @return The description of the route, or null if none. + */ + public CharSequence getDescription() { + return mDescription; + } + + /** + * @return The user-visible status for a media route. This may include a description * of the currently playing media, if available. */ public CharSequence getStatus() { @@ -1410,6 +1438,7 @@ public class MediaRouter { public String toString() { String supportedTypes = typesToString(getSupportedTypes()); return getClass().getSimpleName() + "{ name=" + getName() + + ", description=" + getDescription() + ", status=" + getStatus() + ", category=" + getCategory() + ", supportedTypes=" + supportedTypes + @@ -1445,6 +1474,11 @@ public class MediaRouter { /** * Set the user-visible name of this route. + *

+ * The route name identifies the destination represented by the route. + * It may be a user-supplied name, an alias, or device serial number. + *

+ * * @param resId Resource ID of the name to display to the user to describe this route */ public void setName(int resId) { @@ -1453,6 +1487,20 @@ public class MediaRouter { routeUpdated(); } + /** + * Set the user-visible description of this route. + *

+ * The route description describes the kind of destination represented by the route. + * It may be a user-supplied string, a model number or brand of device. + *

+ * + * @param description The description of the route, or null if none. + */ + public void setDescription(CharSequence description) { + mDescription = description; + routeUpdated(); + } + /** * Set the current user-visible status for this route. * @param status Status to display to the user to describe what the endpoint