diff options
-rw-r--r-- | src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java b/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java index ba56145e7..f72c34232 100644 --- a/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java +++ b/src/com/android/server/telecom/bluetooth/BluetoothRouteManager.java @@ -597,14 +597,20 @@ public class BluetoothRouteManager extends StateMachine { String actualAddress = matchingDevice.isPresent() ? address : getActiveDeviceAddress(); + if (actualAddress == null) { + Log.i(this, "No device specified and BT stack has no active device." + + " Using arbitrary device"); + if (deviceList.size() > 0) { + actualAddress = deviceList.iterator().next().getAddress(); + } else { + Log.i(this, "No devices available at all. Not connecting."); + return null; + } + } if (!matchingDevice.isPresent()) { Log.i(this, "No device with address %s available. Using %s instead.", address, actualAddress); } - if (actualAddress == null) { - Log.i(this, "No device specified and BT stack has no active device. Not connecting."); - return null; - } if (!connectAudio(actualAddress)) { boolean shouldRetry = retryCount < MAX_CONNECTION_RETRIES; Log.w(LOG_TAG, "Could not connect to %s. Will %s", actualAddress, |