Loading services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +11 −1 Original line number Diff line number Diff line Loading @@ -985,6 +985,7 @@ class MediaRouter2ServiceImpl { if (userRecord == null) { userRecord = new UserRecord(userId); mUserRecords.put(userId, userRecord); userRecord.init(); if (userId == mCurrentUserId) { userRecord.mHandler.sendMessage( obtainMessage(UserHandler::start, userRecord.mHandler)); Loading Loading @@ -1034,6 +1035,10 @@ class MediaRouter2ServiceImpl { mHandler = new UserHandler(MediaRouter2ServiceImpl.this, this); } void init() { mHandler.init(); } // TODO: This assumes that only one router exists in a package. // Do this in Android S or later. RouterRecord findRouterRecordLocked(String packageName) { Loading Loading @@ -1141,16 +1146,21 @@ class MediaRouter2ServiceImpl { private boolean mRunning; // TODO: (In Android S+) Pull out SystemMediaRoute2Provider out of UserHandler. UserHandler(@NonNull MediaRouter2ServiceImpl service, @NonNull UserRecord userRecord) { super(Looper.getMainLooper(), null, true); mServiceRef = new WeakReference<>(service); mUserRecord = userRecord; mSystemProvider = new SystemMediaRoute2Provider(service.mContext, this); mSystemProvider = new SystemMediaRoute2Provider(service.mContext); mRouteProviders.add(mSystemProvider); mWatcher = new MediaRoute2ProviderWatcher(service.mContext, this, this, mUserRecord.mUserId); } void init() { mSystemProvider.setCallback(this); } private void start() { if (!mRunning) { mRunning = true; Loading services/core/java/com/android/server/media/SystemMediaRoute2Provider.java +12 −3 Original line number Diff line number Diff line Loading @@ -98,12 +98,10 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { } }; SystemMediaRoute2Provider(Context context, Callback callback) { SystemMediaRoute2Provider(Context context) { super(sComponentName); setCallback(callback); mIsSystemRouteProvider = true; mContext = context; mHandler = new Handler(Looper.getMainLooper()); Loading Loading @@ -142,6 +140,13 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { updateVolume(); } @Override public void setCallback(Callback callback) { super.setCallback(callback); notifyProviderState(); notifySessionInfoUpdated(); } @Override public void requestCreateSession(long requestId, String packageName, String routeId, Bundle sessionHints) { Loading Loading @@ -354,6 +359,10 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { } void notifySessionInfoUpdated() { if (mCallback == null) { return; } RoutingSessionInfo sessionInfo; synchronized (mLock) { sessionInfo = mSessionInfos.get(0); Loading Loading
services/core/java/com/android/server/media/MediaRouter2ServiceImpl.java +11 −1 Original line number Diff line number Diff line Loading @@ -985,6 +985,7 @@ class MediaRouter2ServiceImpl { if (userRecord == null) { userRecord = new UserRecord(userId); mUserRecords.put(userId, userRecord); userRecord.init(); if (userId == mCurrentUserId) { userRecord.mHandler.sendMessage( obtainMessage(UserHandler::start, userRecord.mHandler)); Loading Loading @@ -1034,6 +1035,10 @@ class MediaRouter2ServiceImpl { mHandler = new UserHandler(MediaRouter2ServiceImpl.this, this); } void init() { mHandler.init(); } // TODO: This assumes that only one router exists in a package. // Do this in Android S or later. RouterRecord findRouterRecordLocked(String packageName) { Loading Loading @@ -1141,16 +1146,21 @@ class MediaRouter2ServiceImpl { private boolean mRunning; // TODO: (In Android S+) Pull out SystemMediaRoute2Provider out of UserHandler. UserHandler(@NonNull MediaRouter2ServiceImpl service, @NonNull UserRecord userRecord) { super(Looper.getMainLooper(), null, true); mServiceRef = new WeakReference<>(service); mUserRecord = userRecord; mSystemProvider = new SystemMediaRoute2Provider(service.mContext, this); mSystemProvider = new SystemMediaRoute2Provider(service.mContext); mRouteProviders.add(mSystemProvider); mWatcher = new MediaRoute2ProviderWatcher(service.mContext, this, this, mUserRecord.mUserId); } void init() { mSystemProvider.setCallback(this); } private void start() { if (!mRunning) { mRunning = true; Loading
services/core/java/com/android/server/media/SystemMediaRoute2Provider.java +12 −3 Original line number Diff line number Diff line Loading @@ -98,12 +98,10 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { } }; SystemMediaRoute2Provider(Context context, Callback callback) { SystemMediaRoute2Provider(Context context) { super(sComponentName); setCallback(callback); mIsSystemRouteProvider = true; mContext = context; mHandler = new Handler(Looper.getMainLooper()); Loading Loading @@ -142,6 +140,13 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { updateVolume(); } @Override public void setCallback(Callback callback) { super.setCallback(callback); notifyProviderState(); notifySessionInfoUpdated(); } @Override public void requestCreateSession(long requestId, String packageName, String routeId, Bundle sessionHints) { Loading Loading @@ -354,6 +359,10 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { } void notifySessionInfoUpdated() { if (mCallback == null) { return; } RoutingSessionInfo sessionInfo; synchronized (mLock) { sessionInfo = mSessionInfos.get(0); Loading