Chromium Code Reviews| Index: device/bluetooth/android/java/src/org/chromium/device/bluetooth/Wrappers.java |
| diff --git a/device/bluetooth/android/java/src/org/chromium/device/bluetooth/Wrappers.java b/device/bluetooth/android/java/src/org/chromium/device/bluetooth/Wrappers.java |
| index d53e233a287494ab8e05cb6583106e8b51f2bd6e..9bcb3f8f3b04b2b31f92d0e5819b62d5ced034fc 100644 |
| --- a/device/bluetooth/android/java/src/org/chromium/device/bluetooth/Wrappers.java |
| +++ b/device/bluetooth/android/java/src/org/chromium/device/bluetooth/Wrappers.java |
| @@ -46,6 +46,8 @@ import java.util.UUID; |
| class Wrappers { |
| private static final String TAG = "Bluetooth"; |
| + public static final int DEVICE_CLASS_UNSPECIFIED = 0x1F00; |
| + |
| /** |
| * Wraps android.bluetooth.BluetoothAdapter. |
| */ |
| @@ -94,8 +96,13 @@ class Wrappers { |
| Log.i(TAG, "BluetoothAdapterWrapper.create failed: Default adapter not found."); |
| return null; |
| } else { |
| - return new BluetoothAdapterWrapper(adapter, new ContextWrapper(context), |
| - new BluetoothLeScannerWrapper(adapter.getBluetoothLeScanner())); |
| + BluetoothLeScanner scanner = adapter.getBluetoothLeScanner(); |
|
scheib
2016/01/21 05:33:51
In my patch you'll see that I moved the code for o
|
| + if (scanner != null) { |
| + return new BluetoothAdapterWrapper(adapter, new ContextWrapper(context), |
| + new BluetoothLeScannerWrapper(scanner)); |
| + } else { |
| + return null; |
| + } |
| } |
| } |
| @@ -171,7 +178,6 @@ class Wrappers { |
| ForwardScanCallbackToWrapper callbackForwarder = |
| new ForwardScanCallbackToWrapper(callback); |
| mCallbacks.put(callback, callbackForwarder); |
| - |
| mScanner.startScan(filters, settings, callbackForwarder); |
| } |
| @@ -276,6 +282,11 @@ class Wrappers { |
| } |
| public int getBluetoothClass_getDeviceClass() { |
| + if (mDevice == null || mDevice.getBluetoothClass() == null) { |
|
scheib
2016/01/21 05:33:51
OK, no test needed here because we don't Fake getB
|
| + // BluetoothDevice.getBluetoothClass() returns null if adapter has been powered off. |
| + // Return DEVICE_CLASS_UNSPECIFIED in these cases. |
| + return DEVICE_CLASS_UNSPECIFIED; |
| + } |
| return mDevice.getBluetoothClass().getDeviceClass(); |
| } |