diff options
| author | 2020-03-30 02:47:50 +0000 | |
|---|---|---|
| committer | 2020-03-30 02:47:50 +0000 | |
| commit | e7647d94b4f02140b368189e9743e745d838935e (patch) | |
| tree | 4d3b381226641d8d26a5c9d156b9d9a333036c41 | |
| parent | 61b5936007560a094ede8cf00a48de6c8188ba5e (diff) | |
| parent | fe87df9ea67fdcebae9a265921957c806d85ab68 (diff) | |
Merge "Check mBtRouteProvider for null before using it" into rvc-dev
| -rw-r--r-- | services/core/java/com/android/server/media/SystemMediaRoute2Provider.java | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/services/core/java/com/android/server/media/SystemMediaRoute2Provider.java b/services/core/java/com/android/server/media/SystemMediaRoute2Provider.java index c69787d602e2..5b16d686e04c 100644 --- a/services/core/java/com/android/server/media/SystemMediaRoute2Provider.java +++ b/services/core/java/com/android/server/media/SystemMediaRoute2Provider.java @@ -103,6 +103,7 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { } updateDeviceRoute(newAudioRoutes); + // .getInstance returns null if there is no bt adapter available mBtRouteProvider = BluetoothRouteProvider.getInstance(context, (routes) -> { publishProviderState(); @@ -116,10 +117,12 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { mContext.registerReceiver(new VolumeChangeReceiver(), new IntentFilter(AudioManager.VOLUME_CHANGED_ACTION)); - mHandler.post(() -> { - mBtRouteProvider.start(); - notifyProviderState(); - }); + if (mBtRouteProvider != null) { + mHandler.post(() -> { + mBtRouteProvider.start(); + notifyProviderState(); + }); + } } @Override @@ -153,10 +156,12 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { @Override public void transferToRoute(long requestId, String sessionId, String routeId) { - if (TextUtils.equals(routeId, mDeviceRoute.getId())) { - mBtRouteProvider.transferTo(null); - } else { - mBtRouteProvider.transferTo(routeId); + if (mBtRouteProvider != null) { + if (TextUtils.equals(routeId, mDeviceRoute.getId())) { + mBtRouteProvider.transferTo(null); + } else { + mBtRouteProvider.transferTo(routeId); + } } } @@ -294,7 +299,7 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider { mDeviceRoute = new MediaRoute2Info.Builder(mDeviceRoute) .setVolume(newVolume) .build(); - } else { + } else if (mBtRouteProvider != null) { mBtRouteProvider.setSelectedRouteVolume(newVolume); } publishProviderState(); |