Merge "Check mBtRouteProvider for null before using it" into rvc-dev am: e7647d94b4

Change-Id: I842dc5ef97c235703514acd2dc8c063a7113d564
This commit is contained in:
TreeHugger Robot
2020-03-30 02:54:15 +00:00
committed by Automerger Merge Worker

View File

@@ -103,6 +103,7 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider {
} }
updateDeviceRoute(newAudioRoutes); updateDeviceRoute(newAudioRoutes);
// .getInstance returns null if there is no bt adapter available
mBtRouteProvider = BluetoothRouteProvider.getInstance(context, (routes) -> { mBtRouteProvider = BluetoothRouteProvider.getInstance(context, (routes) -> {
publishProviderState(); publishProviderState();
@@ -116,11 +117,13 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider {
mContext.registerReceiver(new VolumeChangeReceiver(), mContext.registerReceiver(new VolumeChangeReceiver(),
new IntentFilter(AudioManager.VOLUME_CHANGED_ACTION)); new IntentFilter(AudioManager.VOLUME_CHANGED_ACTION));
if (mBtRouteProvider != null) {
mHandler.post(() -> { mHandler.post(() -> {
mBtRouteProvider.start(); mBtRouteProvider.start();
notifyProviderState(); notifyProviderState();
}); });
} }
}
@Override @Override
public void requestCreateSession(long requestId, String packageName, String routeId, public void requestCreateSession(long requestId, String packageName, String routeId,
@@ -153,12 +156,14 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider {
@Override @Override
public void transferToRoute(long requestId, String sessionId, String routeId) { public void transferToRoute(long requestId, String sessionId, String routeId) {
if (mBtRouteProvider != null) {
if (TextUtils.equals(routeId, mDeviceRoute.getId())) { if (TextUtils.equals(routeId, mDeviceRoute.getId())) {
mBtRouteProvider.transferTo(null); mBtRouteProvider.transferTo(null);
} else { } else {
mBtRouteProvider.transferTo(routeId); mBtRouteProvider.transferTo(routeId);
} }
} }
}
@Override @Override
public void setRouteVolume(long requestId, String routeId, int volume) { public void setRouteVolume(long requestId, String routeId, int volume) {
@@ -294,7 +299,7 @@ class SystemMediaRoute2Provider extends MediaRoute2Provider {
mDeviceRoute = new MediaRoute2Info.Builder(mDeviceRoute) mDeviceRoute = new MediaRoute2Info.Builder(mDeviceRoute)
.setVolume(newVolume) .setVolume(newVolume)
.build(); .build();
} else { } else if (mBtRouteProvider != null) {
mBtRouteProvider.setSelectedRouteVolume(newVolume); mBtRouteProvider.setSelectedRouteVolume(newVolume);
} }
publishProviderState(); publishProviderState();