| OLD | NEW |
| 1 # Bluetooth | 1 # Bluetooth |
| 2 | 2 |
| 3 `device/bluetooth` abstracts | 3 `device/bluetooth` abstracts |
| 4 [Bluetooth Classic](https://en.wikipedia.org/wiki/Bluetooth) and | 4 [Bluetooth Classic](https://en.wikipedia.org/wiki/Bluetooth) and |
| 5 [Low Energy](https://en.wikipedia.org/wiki/Bluetooth_low_energy) features | 5 [Low Energy](https://en.wikipedia.org/wiki/Bluetooth_low_energy) features |
| 6 across multiple platforms. | 6 across multiple platforms. |
| 7 | 7 |
| 8 Classic and Low Energy based profiles differ substantially. Platform | 8 Classic and Low Energy based profiles differ substantially. Platform |
| 9 implementations may support only one or the other, even though several classes | 9 implementations may support only one or the other, even though several classes |
| 10 have interfaces for both, e.g. `BluetoothAdapter` & `BluetoothDevice`. | 10 have interfaces for both, e.g. `BluetoothAdapter` & `BluetoothDevice`. |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 * [chrome.bluetoothSocket](https://developer.chrome.com/apps/bluetoothSocket) | 36 * [chrome.bluetoothSocket](https://developer.chrome.com/apps/bluetoothSocket) |
| 37 | 37 |
| 38 Active development in 2015 & 2016 is focused on enabling GATT features for: | 38 Active development in 2015 & 2016 is focused on enabling GATT features for: |
| 39 | 39 |
| 40 * [Web Bluetooth](https://crbug.com/419413) | 40 * [Web Bluetooth](https://crbug.com/419413) |
| 41 * Peripheral mode for Chrome OS. | 41 * Peripheral mode for Chrome OS. |
| 42 | 42 |
| 43 Known future work is tracked in the | 43 Known future work is tracked in the |
| 44 [Refactoring meta issue](https://crbug.com/580406). | 44 [Refactoring meta issue](https://crbug.com/580406). |
| 45 | 45 |
| 46 |
| 46 ## Android | 47 ## Android |
| 47 | 48 |
| 48 The android implementation requires crossing from C++ to Java using | 49 The android implementation requires crossing from C++ to Java using |
| 49 [__JNI__](https://www.chromium.org/developers/design-documents/android-jni). | 50 [__JNI__](https://www.chromium.org/developers/design-documents/android-jni). |
| 50 | 51 |
| 51 Object ownership is rooted in the C++ classes, starting with the Adapter, which | 52 Object ownership is rooted in the C++ classes, starting with the Adapter, which |
| 52 owns Devices, Services, etc. Java counter parts interface with the Android | 53 owns Devices, Services, etc. Java counter parts interface with the Android |
| 53 Bluetooth objects. E.g. | 54 Bluetooth objects. E.g. |
| 54 | 55 |
| 55 For testing, the Android objects are __wrapped__ in: | 56 For testing, the Android objects are __wrapped__ in: |
| (...skipping 16 matching lines...) Expand all Loading... |
| 72 * `android/.../Wrappers.java`: `BluetoothServiceWrapper` | 73 * `android/.../Wrappers.java`: `BluetoothServiceWrapper` |
| 73 * Which under test is a `FakeBluetoothService` | 74 * Which under test is a `FakeBluetoothService` |
| 74 * ... and so on for characteristics and descriptors. | 75 * ... and so on for characteristics and descriptors. |
| 75 | 76 |
| 76 Fake objects are controlled by `bluetooth_test_android.cc`. | 77 Fake objects are controlled by `bluetooth_test_android.cc`. |
| 77 | 78 |
| 78 See also: [Class Diagram of Web Bluetooth through Bluetooth Android][Class] | 79 See also: [Class Diagram of Web Bluetooth through Bluetooth Android][Class] |
| 79 | 80 |
| 80 [Class]: https://sites.google.com/a/chromium.org/dev/developers/design-documents
/bluetooth-design-docs/web-bluetooth-through-bluetooth-android-class-diagram | 81 [Class]: https://sites.google.com/a/chromium.org/dev/developers/design-documents
/bluetooth-design-docs/web-bluetooth-through-bluetooth-android-class-diagram |
| 81 | 82 |
| 83 |
| 82 ## Testing | 84 ## Testing |
| 83 See [test/README.md](//device/bluetooth/test/README.md) | 85 See [test/README.md](test/README.md) |
| 86 |
| 84 | 87 |
| 85 ## Design Documents | 88 ## Design Documents |
| 86 | 89 |
| 87 * [Bluetooth Notifications](https://docs.google.com/document/d/1guBtAnQUP8ZoZre4
VQGrjR5uX0ZYxfK-lwKNeqY0-z4/edit?usp=sharing) 2016-08-26 | 90 * [Bluetooth Notifications](https://docs.google.com/document/d/1guBtAnQUP8ZoZre4
VQGrjR5uX0ZYxfK-lwKNeqY0-z4/edit?usp=sharing) 2016-08-26 |
| 88 * Web Bluetooth through Android implementation details, class diagram and | 91 * Web Bluetooth through Android implementation details, class diagram and |
| 89 call flow. | 92 call flow. |
| OLD | NEW |