Chromium Code Reviews| Index: device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java |
| diff --git a/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java b/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java |
| index b11e7d22c74eb1f6d57a1e87f7a25554fef4ae26..53d2010b539dcd2c4d4418f6533a6128a171a2c9 100644 |
| --- a/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java |
| +++ b/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java |
| @@ -8,6 +8,7 @@ import android.annotation.TargetApi; |
| import android.bluetooth.BluetoothAdapter; |
| import android.bluetooth.le.ScanSettings; |
| import android.os.Build; |
| +import android.os.ParcelUuid; |
| import org.chromium.base.CalledByNative; |
| import org.chromium.base.JNINamespace; |
| @@ -19,6 +20,8 @@ import java.util.List; |
| * Exposes android.bluetooth.BluetoothAdapter as necessary for C++ |
| * device::BluetoothAdapterAndroid, which implements the cross platform |
| * device::BluetoothAdapter. |
| + * |
| + * Lifetime is controlled by device::BluetoothAdapterAndroid. |
| */ |
| @JNINamespace("device") |
| @TargetApi(Build.VERSION_CODES.LOLLIPOP) |
| @@ -219,6 +222,11 @@ final class ChromeBluetoothAdapter { |
| public void onScanResultWrapper(int callbackType, Wrappers.ScanResultWrapper result) { |
| Log.v(TAG, "onScanResult %d %s %s", callbackType, result.getDevice().getAddress(), |
| result.getDevice().getName()); |
| + |
| + List<ParcelUuid> uuids = result.getScanRecord_getServiceUuids(); |
| + |
| + nativeCreateOrUpdateDeviceOnScan(mNativeBluetoothAdapterAndroid, |
| + result.getDevice().getAddress(), result.getDevice(), uuids); |
| } |
| @Override |
| @@ -234,4 +242,10 @@ final class ChromeBluetoothAdapter { |
| // Binds to BluetoothAdapterAndroid::OnScanFailed. |
| private native void nativeOnScanFailed(long nativeBluetoothAdapterAndroid); |
| + |
| + // Binds to BluetoothAdapterAndroid::GetChromeBluetoothDevice. |
|
Jeffrey Yasskin
2015/07/07 00:11:13
Why does "CreateOrUpdateDeviceOnScan" bind to "Get
scheib
2015/07/08 00:49:10
Done. - failed to update comment after updating me
|
| + // 'Object' type must be used because inner class Wrappers.BluetoothDeviceWrapper reference is |
|
Jeffrey Yasskin
2015/07/07 00:11:13
"must be used for |bluetoothDeviceWrapper| because
scheib
2015/07/08 00:49:10
Done.
|
| + // not handled by jni_generator.py JavaToJni. http://crbug.com/505554 |
| + private native void nativeCreateOrUpdateDeviceOnScan(long nativeBluetoothAdapterAndroid, |
| + String jaddress, Object bluetoothDeviceWrapper, List<ParcelUuid> advertisedUuids); |
|
Jeffrey Yasskin
2015/07/07 00:11:13
"jaddress"?
scheib
2015/07/08 00:49:10
Done.
|
| } |