aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBert McMeen <amcmeen@google.com>2015-03-31 14:52:53 -0700
committerBert McMeen <amcmeen@google.com>2015-04-01 11:53:08 -0700
commitfc78853b6de2836decd2ac745ce0103c8ad7c78a (patch)
treee5a46feb08f341dc1c52fe3db9eb61afa5662457
parent40ff15f60e0c49546c79d27ac79f9c3e59e38156 (diff)
downloadsource.android.com-fc78853b6de2836decd2ac745ce0103c8ad7c78a.tar.gz
Docs: Update to main BT page
Bug: 19988353 Change-Id: I9c8a3e4572e4caa492d963dfb42aa4ee1702bd77
-rw-r--r--src/devices/bluetooth.jd29
1 files changed, 15 insertions, 14 deletions
diff --git a/src/devices/bluetooth.jd b/src/devices/bluetooth.jd
index 13eb4b54..8677b7d0 100644
--- a/src/devices/bluetooth.jd
+++ b/src/devices/bluetooth.jd
@@ -31,7 +31,7 @@ page.title=Bluetooth
<p>To fully leverage the <a href="http://developer.android.com/about/versions/android-5.0.html#BluetoothBroadcasting">Bluetooth Low Energy APIs</a> added in Android 5.0, you should implement the <a href="Android-5.0-Bluetooth-HCI-Reqs.pdf">Android 5.0 Bluetooth HCI Requirements</a>.</p>
<h2 id="architecture">Architecture</h2>
-<p>A Bluetooth system service communicates with the Bluetooth stack through JNI and with applications through Binder IPC. The system service provides developers access to various Bluetooth profiles. The following diagram shows the general structure of the Bluetooth stack:
+<p>A Bluetooth system service communicates with the Bluetooth stack through JNI and with applications through Binder IPC. The system service provides developers access to various Bluetooth profiles. The following diagram shows the general structure of the Bluetooth stack:
</p>
<img src="images/ape_fwk_bluetooth.png" alt="Android Bluetooth architecture" id="figure1" />
@@ -43,7 +43,7 @@ page.title=Bluetooth
<dt>Application framework</dt>
<dd>At the application framework level is the app's code, which utilizes the <a
href="http://developer.android.com/reference/android/bluetooth/package-summary.html">android.bluetooth</a>
- APIs to interact with the bluetooth hardware. Internally, this code calls the Bluetooth process through
+ APIs to interact with the Bluetooth hardware. Internally, this code calls the Bluetooth process through
the Binder IPC mechanism.</dd>
<dt>Bluetooth system service</dt>
@@ -61,7 +61,7 @@ page.title=Bluetooth
<dt>HAL</dt>
<dd>The hardware abstraction layer defines the standard interface that the <a
href="http://developer.android.com/reference/android/bluetooth/package-summary.html">android.bluetooth</a> APIs
- and Bluetooth process calls into and that you must implement to have your bluetooth hardware
+ and Bluetooth process calls into and that you must implement to have your Bluetooth hardware
function correctly. The header files for the Bluetooth HAL is located
in the <code>hardware/libhardware/include/hardware/bluetooth.h</code> and
<code>hardware/libhardware/include/hardware/bt_*.h</code> files.
@@ -82,21 +82,22 @@ page.title=Bluetooth
<h2 id="implementing">Implementing the HAL</h2>
-<p>The Bluetooth HAL is located in the <code>hardware/libhardware/include/hardware/</code> directory
- and consists of the following header files:
+<p>The Bluetooth HAL is located in the <code>hardware/libhardware/include/hardware/</code> directory. Please see that directory for the <strong>complete set</strong> of files, which include but are not limited to the following:
+</p>
<ul>
- <li><code>bluetooth.h</code>: Contains the HAL for the Bluetooth hardware on the device</li>
- <li><code>bt_av.h</code>: Contains the HAL for the advanced audio profile.</li>
- <li><code>bt_hf.h</code>: Contains the HAL for the handsfree profile.</li>
- <li><code>bt_hh.h</code>: Contains the HAL for the HID host profile</li>
- <li><code>bt_hl.h</code>: Contains the HAL for the health profile</li>
- <li><code>bt_pan.h</code>: Contains the HAL for the pan profile</li>
- <li><code>bt_sock.h</code>: Contains the HAL for the socket profile.</li>
+ <li><code>bluetooth.h</code>: Includes the interface definition for the Bluetooth hardware on the device.</li>
+ <li><code>bt_av.h</code>: Includes the interface definition for the A2DP profile.</li>
+ <li><code>bt_gatt.h</code>, <code>bt_gatt_client.h</code>, and <code>bt_gatt_server.h</code>: These include the interface definition for the GATT profile.</li>
+ <li><code>bt_hf.h</code>: Includes the interface definition for the HFP profile.</li>
+ <li><code>bt_hh.h</code>: Includes the interface definition for the HID host profile.</li>
+ <li><code>bt_hl.h</code>: Includes the interface definition for the HDP profile.</li>
+ <li><code>bt_mce.h</code>: Includes the interface definition for the MAP profile.</li>
+ <li><code>bt_pan.h</code>: Includes the interface definition for the PAN profile.</li>
+ <li><code>bt_rc.h</code>: Includes the interface definition for the AVRCP profile.</li>
+ <li><code>bt_sock.h</code>: Includes the interface definition for RFCOMM sockets.</li>
</ul>
-</p>
-
<p>Keep in mind that your Bluetooth implementation is not constrained to the features
and profiles exposed in the HAL. You can find the default implementation located
in the BlueDroid Bluetooth stack in the <code>external/bluetooth/bluedroid</code> directory,