OLD | NEW |
1 Bluetooth | 1 Bluetooth |
2 ========= | 2 ========= |
3 | 3 |
4 `device/bluetooth` abstracts | 4 `device/bluetooth` abstracts |
5 [Bluetooth Classic](https://en.wikipedia.org/wiki/Bluetooth) and | 5 [Bluetooth Classic](https://en.wikipedia.org/wiki/Bluetooth) and |
6 [Low Energy](https://en.wikipedia.org/wiki/Bluetooth_low_energy) features | 6 [Low Energy](https://en.wikipedia.org/wiki/Bluetooth_low_energy) features |
7 across multiple platforms. | 7 across multiple platforms. |
8 | 8 |
9 Classic and Low Energy based profiles differ substantially. Platform | 9 Classic and Low Energy based profiles differ substantially. Platform |
10 implementations may support only one or the other, even though several classes | 10 implementations may support only one or the other, even though several classes |
11 have interfaces for both, e.g. `BluetoothAdapter` & `BluetoothDevice`. | 11 have interfaces for both, e.g. `BluetoothAdapter` & `BluetoothDevice`. |
12 | 12 |
13 | | Classic | Low Energy | | 13 | | Classic | Low Energy | |
14 |----------|:-------:|:-----------:| | 14 |-----------|:-------:|:-----------:| |
15 | Android | no | yes | | 15 | Android | no | yes | |
16 | ChromeOS | yes | yes | | 16 | Chrome OS | yes | yes | |
17 | Linux | yes | yes | | 17 | Linux | yes | yes | |
18 | Mac | yes | yes | | 18 | Mac | yes | yes | |
19 | Windows | some | nearly | | 19 | Windows | some | nearly | |
20 | 20 |
21 ChromeOS and Linux are supported via BlueZ, see `*_bluez` files. | 21 Chrome OS and Linux are supported via BlueZ, see `*_bluez` files. |
22 | 22 |
23 | 23 |
24 Maintainer History | 24 Maintainer History |
25 -------------------------------------------------------------------------------- | 25 -------------------------------------------------------------------------------- |
26 | 26 |
27 Initial implementation OWNERS were youngki@chromium.org, keybuk@chromium.org, | 27 Initial implementation OWNERS were youngki@chromium.org, keybuk@chromium.org, |
28 armansito@chromium.org, and rpaquay@chromium.org. They no longer contribute to | 28 armansito@chromium.org, and rpaquay@chromium.org. They no longer contribute to |
29 chromium fulltime. They were responsible for support for ChromeOS Bluetooth | 29 chromium fulltime. They were responsible for support for Chrome OS Bluetooth |
30 features and the Chrome Apps APIs: | 30 features and the Chrome Apps APIs: |
31 | 31 |
32 * [chrome.bluetooth](https://developer.chrome.com/apps/bluetooth) | 32 * [chrome.bluetooth](https://developer.chrome.com/apps/bluetooth) |
33 * [chrome.bluetoothLowEnergy](https://developer.chrome.com/apps/bluetoothLowEner
gy) | 33 * [chrome.bluetoothLowEnergy](https://developer.chrome.com/apps/bluetoothLowEner
gy) |
34 * [chrome.bluetoothSocket](https://developer.chrome.com/apps/bluetoothSocket) | 34 * [chrome.bluetoothSocket](https://developer.chrome.com/apps/bluetoothSocket) |
35 | 35 |
36 Active development in 2015 & 2016 is focused on enabling GATT features for: | 36 Active development in 2015 & 2016 is focused on enabling GATT features for: |
37 | 37 |
38 * [Web Bluetooth](https://crbug.com/419413) | 38 * [Web Bluetooth](https://crbug.com/419413) |
39 * Peripheral mode for ChromeOS. | 39 * Peripheral mode for Chrome OS. |
40 | 40 |
41 Known future work is tracked in the | 41 Known future work is tracked in the |
42 [Refactoring meta issue](https://crbug.com/580406). | 42 [Refactoring meta issue](https://crbug.com/580406). |
43 | 43 |
44 | 44 |
45 Testing | 45 Testing |
46 -------------------------------------------------------------------------------- | 46 -------------------------------------------------------------------------------- |
47 | 47 |
48 Implementation of the Bluetooth component is tested via unittests. Client code | 48 Implementation of the Bluetooth component is tested via unittests. Client code |
49 uses Mock Bluetooth objects: | 49 uses Mock Bluetooth objects: |
(...skipping 27 matching lines...) Expand all Loading... |
77 place. Long term these tests should be [refactored into cross platform | 77 place. Long term these tests should be [refactored into cross platform |
78 tests](https://crbug.com/580403). | 78 tests](https://crbug.com/580403). |
79 | 79 |
80 | 80 |
81 ### Mock Bluetooth Objects | 81 ### Mock Bluetooth Objects |
82 | 82 |
83 `test/mock_bluetooth_*` files provide GoogleMock based fake objects for use in | 83 `test/mock_bluetooth_*` files provide GoogleMock based fake objects for use in |
84 client code. | 84 client code. |
85 | 85 |
86 | 86 |
87 ### ChromeOS Blueooth Controller Tests | 87 ### Chrome OS Blueooth Controller Tests |
88 | 88 |
89 Bluetooth controller system tests generating radio signals are run and managed | 89 Bluetooth controller system tests generating radio signals are run and managed |
90 by the ChromeOS team. See: | 90 by the Chrome OS team. See: |
91 https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/serve
r/site_tests/ | 91 https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/serve
r/site_tests/ |
92 https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/serve
r/cros/bluetooth/ | 92 https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/serve
r/cros/bluetooth/ |
93 https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/clien
t/cros/bluetooth/ | 93 https://chromium.googlesource.com/chromiumos/third_party/autotest/+/master/clien
t/cros/bluetooth/ |
94 | 94 |
95 | 95 |
96 Android | 96 Android |
97 -------------------------------------------------------------------------------- | 97 -------------------------------------------------------------------------------- |
98 | 98 |
99 The android implementation requires crossing from C++ to Java using | 99 The android implementation requires crossing from C++ to Java using |
100 [__JNI__](https://www.chromium.org/developers/design-documents/android-jni). | 100 [__JNI__](https://www.chromium.org/developers/design-documents/android-jni). |
(...skipping 28 matching lines...) Expand all Loading... |
129 See also: [Class Diagram of Web Bluetooth through Bluetooth Android][Class] | 129 See also: [Class Diagram of Web Bluetooth through Bluetooth Android][Class] |
130 | 130 |
131 [Class]: https://sites.google.com/a/chromium.org/dev/developers/design-documents
/bluetooth-design-docs/web-bluetooth-through-bluetooth-android-class-diagram | 131 [Class]: https://sites.google.com/a/chromium.org/dev/developers/design-documents
/bluetooth-design-docs/web-bluetooth-through-bluetooth-android-class-diagram |
132 | 132 |
133 Design Documents | 133 Design Documents |
134 -------------------------------------------------------------------------------- | 134 -------------------------------------------------------------------------------- |
135 | 135 |
136 * [Bluetooth Notifications](https://docs.google.com/document/d/1guBtAnQUP8ZoZre4
VQGrjR5uX0ZYxfK-lwKNeqY0-z4/edit?usp=sharing) 2016-08-26 | 136 * [Bluetooth Notifications](https://docs.google.com/document/d/1guBtAnQUP8ZoZre4
VQGrjR5uX0ZYxfK-lwKNeqY0-z4/edit?usp=sharing) 2016-08-26 |
137 * Web Bluetooth through Android implementation details, class diagram and | 137 * Web Bluetooth through Android implementation details, class diagram and |
138 call flow. | 138 call flow. |
OLD | NEW |