Skip to content

Commit f9d80b6

Browse files
Dianne HackbornAndroid (Google) Code Review
authored andcommitted
Merge "Rework media router to be per-context with global process state." into jb-dev
2 parents 64dbcd6 + b58b8f8 commit f9d80b6

File tree

7 files changed

+188
-171
lines changed

7 files changed

+188
-171
lines changed

api/16.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5336,6 +5336,7 @@ package android.content {
53365336
field public static final java.lang.String KEYGUARD_SERVICE = "keyguard";
53375337
field public static final java.lang.String LAYOUT_INFLATER_SERVICE = "layout_inflater";
53385338
field public static final java.lang.String LOCATION_SERVICE = "location";
5339+
field public static final java.lang.String MEDIA_ROUTER_SERVICE = "media_router";
53395340
field public static final int MODE_APPEND = 32768; // 0x8000
53405341
field public static final int MODE_ENABLE_WRITE_AHEAD_LOGGING = 8; // 0x8
53415342
field public static final int MODE_MULTI_PROCESS = 4; // 0x4
@@ -11511,7 +11512,6 @@ package android.media {
1151111512
method public void clearUserRoutes();
1151211513
method public android.media.MediaRouter.RouteCategory createRouteCategory(java.lang.CharSequence, boolean);
1151311514
method public android.media.MediaRouter.UserRouteInfo createUserRoute(android.media.MediaRouter.RouteCategory);
11514-
method public static android.media.MediaRouter forApplication(android.content.Context);
1151511515
method public android.media.MediaRouter.RouteCategory getCategoryAt(int);
1151611516
method public int getCategoryCount();
1151711517
method public android.media.MediaRouter.RouteInfo getRouteAt(int);
@@ -11534,14 +11534,14 @@ package android.media {
1153411534
method public abstract void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo);
1153511535
}
1153611536

11537-
public class MediaRouter.RouteCategory {
11537+
public static class MediaRouter.RouteCategory {
1153811538
method public java.lang.CharSequence getName();
1153911539
method public java.util.List<android.media.MediaRouter.RouteInfo> getRoutes(java.util.List<android.media.MediaRouter.RouteInfo>);
1154011540
method public int getSupportedTypes();
1154111541
method public boolean isGroupable();
1154211542
}
1154311543

11544-
public class MediaRouter.RouteGroup extends android.media.MediaRouter.RouteInfo {
11544+
public static class MediaRouter.RouteGroup extends android.media.MediaRouter.RouteInfo {
1154511545
method public void addRoute(android.media.MediaRouter.RouteInfo);
1154611546
method public void addRoute(android.media.MediaRouter.RouteInfo, int);
1154711547
method public android.media.MediaRouter.RouteInfo getRouteAt(int);
@@ -11550,7 +11550,7 @@ package android.media {
1155011550
method public void removeRoute(int);
1155111551
}
1155211552

11553-
public class MediaRouter.RouteInfo {
11553+
public static class MediaRouter.RouteInfo {
1155411554
method public android.media.MediaRouter.RouteCategory getCategory();
1155511555
method public android.media.MediaRouter.RouteGroup getGroup();
1155611556
method public java.lang.CharSequence getName();
@@ -11569,7 +11569,7 @@ package android.media {
1156911569
method public void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo);
1157011570
}
1157111571

11572-
public class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo {
11572+
public static class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo {
1157311573
method public void setName(java.lang.CharSequence);
1157411574
method public void setStatus(java.lang.CharSequence);
1157511575
}

api/current.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5336,6 +5336,7 @@ package android.content {
53365336
field public static final java.lang.String KEYGUARD_SERVICE = "keyguard";
53375337
field public static final java.lang.String LAYOUT_INFLATER_SERVICE = "layout_inflater";
53385338
field public static final java.lang.String LOCATION_SERVICE = "location";
5339+
field public static final java.lang.String MEDIA_ROUTER_SERVICE = "media_router";
53395340
field public static final int MODE_APPEND = 32768; // 0x8000
53405341
field public static final int MODE_ENABLE_WRITE_AHEAD_LOGGING = 8; // 0x8
53415342
field public static final int MODE_MULTI_PROCESS = 4; // 0x4
@@ -11511,7 +11512,6 @@ package android.media {
1151111512
method public void clearUserRoutes();
1151211513
method public android.media.MediaRouter.RouteCategory createRouteCategory(java.lang.CharSequence, boolean);
1151311514
method public android.media.MediaRouter.UserRouteInfo createUserRoute(android.media.MediaRouter.RouteCategory);
11514-
method public static android.media.MediaRouter forApplication(android.content.Context);
1151511515
method public android.media.MediaRouter.RouteCategory getCategoryAt(int);
1151611516
method public int getCategoryCount();
1151711517
method public android.media.MediaRouter.RouteInfo getRouteAt(int);
@@ -11534,14 +11534,14 @@ package android.media {
1153411534
method public abstract void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo);
1153511535
}
1153611536

11537-
public class MediaRouter.RouteCategory {
11537+
public static class MediaRouter.RouteCategory {
1153811538
method public java.lang.CharSequence getName();
1153911539
method public java.util.List<android.media.MediaRouter.RouteInfo> getRoutes(java.util.List<android.media.MediaRouter.RouteInfo>);
1154011540
method public int getSupportedTypes();
1154111541
method public boolean isGroupable();
1154211542
}
1154311543

11544-
public class MediaRouter.RouteGroup extends android.media.MediaRouter.RouteInfo {
11544+
public static class MediaRouter.RouteGroup extends android.media.MediaRouter.RouteInfo {
1154511545
method public void addRoute(android.media.MediaRouter.RouteInfo);
1154611546
method public void addRoute(android.media.MediaRouter.RouteInfo, int);
1154711547
method public android.media.MediaRouter.RouteInfo getRouteAt(int);
@@ -11550,7 +11550,7 @@ package android.media {
1155011550
method public void removeRoute(int);
1155111551
}
1155211552

11553-
public class MediaRouter.RouteInfo {
11553+
public static class MediaRouter.RouteInfo {
1155411554
method public android.media.MediaRouter.RouteCategory getCategory();
1155511555
method public android.media.MediaRouter.RouteGroup getGroup();
1155611556
method public java.lang.CharSequence getName();
@@ -11569,7 +11569,7 @@ package android.media {
1156911569
method public void onRouteUnselected(android.media.MediaRouter, int, android.media.MediaRouter.RouteInfo);
1157011570
}
1157111571

11572-
public class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo {
11572+
public static class MediaRouter.UserRouteInfo extends android.media.MediaRouter.RouteInfo {
1157311573
method public void setName(java.lang.CharSequence);
1157411574
method public void setStatus(java.lang.CharSequence);
1157511575
}

core/java/android/app/ContextImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
import android.location.ILocationManager;
5656
import android.location.LocationManager;
5757
import android.media.AudioManager;
58+
import android.media.MediaRouter;
5859
import android.net.ConnectivityManager;
5960
import android.net.IConnectivityManager;
6061
import android.net.INetworkPolicyManager;
@@ -288,6 +289,11 @@ public Object createService(ContextImpl ctx) {
288289
return new AudioManager(ctx);
289290
}});
290291

292+
registerService(MEDIA_ROUTER_SERVICE, new ServiceFetcher() {
293+
public Object createService(ContextImpl ctx) {
294+
return new MediaRouter(ctx);
295+
}});
296+
291297
registerService(CLIPBOARD_SERVICE, new ServiceFetcher() {
292298
public Object createService(ContextImpl ctx) {
293299
return new ClipboardManager(ctx.getOuterContext(),

core/java/android/app/MediaRouteActionProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public class MediaRouteActionProvider extends ActionProvider {
3737
public MediaRouteActionProvider(Context context) {
3838
super(context);
3939
mContext = context;
40-
mRouter = MediaRouter.forApplication(context);
40+
mRouter = (MediaRouter)context.getSystemService(Context.MEDIA_ROUTER_SERVICE);
4141

4242
// Start with live audio by default.
4343
// TODO Update this when new route types are added; segment by API level

core/java/android/app/MediaRouteButton.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public MediaRouteButton(Context context, AttributeSet attrs) {
5858
public MediaRouteButton(Context context, AttributeSet attrs, int defStyleAttr) {
5959
super(context, attrs, defStyleAttr);
6060

61-
mRouter = MediaRouter.forApplication(context);
61+
mRouter = (MediaRouter)context.getSystemService(Context.MEDIA_ROUTER_SERVICE);
6262

6363
TypedArray a = context.obtainStyledAttributes(attrs,
6464
com.android.internal.R.styleable.MediaRouteButton, defStyleAttr, 0);

core/java/android/content/Context.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1528,6 +1528,8 @@ public abstract boolean startInstrumentation(ComponentName className,
15281528
* @see android.net.wifi.WifiManager
15291529
* @see #AUDIO_SERVICE
15301530
* @see android.media.AudioManager
1531+
* @see #MEDIA_ROUTER_SERVICE
1532+
* @see android.media.MediaRouter
15311533
* @see #TELEPHONY_SERVICE
15321534
* @see android.telephony.TelephonyManager
15331535
* @see #INPUT_METHOD_SERVICE
@@ -1778,7 +1780,6 @@ public abstract boolean startInstrumentation(ComponentName className,
17781780
*/
17791781
public static final String NSD_SERVICE = "servicediscovery";
17801782

1781-
17821783
/**
17831784
* Use with {@link #getSystemService} to retrieve a
17841785
* {@link android.media.AudioManager} for handling management of volume,
@@ -1789,6 +1790,16 @@ public abstract boolean startInstrumentation(ComponentName className,
17891790
*/
17901791
public static final String AUDIO_SERVICE = "audio";
17911792

1793+
/**
1794+
* Use with {@link #getSystemService} to retrieve a
1795+
* {@link android.media.MediaRouter} for controlling and managing
1796+
* routing of media.
1797+
*
1798+
* @see #getSystemService
1799+
* @see android.media.MediaRouter
1800+
*/
1801+
public static final String MEDIA_ROUTER_SERVICE = "media_router";
1802+
17921803
/**
17931804
* Use with {@link #getSystemService} to retrieve a
17941805
* {@link android.telephony.TelephonyManager} for handling management the

0 commit comments

Comments
 (0)