Merge change Ic31c0f62 into eclair
* changes: docs: update the Bluetooth guide with links to the sample app, scrub the sibling files, and revise the Bluetooth package summary to point to the BT dev guide.
This commit is contained in:
@@ -12,96 +12,16 @@ devices, connecting with devices, and managing data transfer between devices.
|
|||||||
<li>Transfer data to and from other devices</li>
|
<li>Transfer data to and from other devices</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p class="note"><strong>Note:</strong>
|
<p>
|
||||||
To perform Bluetooth communication using these APIs, an application must
|
To perform Bluetooth communication using these APIs, an application must
|
||||||
declare the {@link android.Manifest.permission#BLUETOOTH} permission. Some
|
declare the {@link android.Manifest.permission#BLUETOOTH} permission. Some
|
||||||
additional functionality, such as requesting device discovery and
|
additional functionality, such as requesting device discovery,
|
||||||
pairing also requires the {@link android.Manifest.permission#BLUETOOTH_ADMIN}
|
also requires the {@link android.Manifest.permission#BLUETOOTH_ADMIN}
|
||||||
permission.
|
permission.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<h3>Overview</h3>
|
<p>For a detailed guide to using the Bluetooth APIs, see the <a
|
||||||
|
href="{@docRoot}guide/topics/wireless/bluetooth.html">Bluetooth Dev Guide topic</a>.</p>
|
||||||
<p>Here's a basic introduction to the Bluetooth classes:</p>
|
|
||||||
<dl>
|
|
||||||
<dt>{@link android.bluetooth.BluetoothAdapter}</dt>
|
|
||||||
<dd>This represents the local Bluetooth adapter, which is essentially the
|
|
||||||
entry-point to performing any interaction with Bluetooth. With it, you can
|
|
||||||
discover other Bluetooth devices, query a list of bonded (paired) devices,
|
|
||||||
initialize a {@link android.bluetooth.BluetoothDevice} using a known MAC
|
|
||||||
address, and create a {@link android.bluetooth.BluetoothServerSocket} to
|
|
||||||
listen for communications from other devices.</dd>
|
|
||||||
|
|
||||||
<dt>{@link android.bluetooth.BluetoothDevice}</dt>
|
|
||||||
<dd>This represents a remote Bluetooth device. Use this to request a
|
|
||||||
connection with a remote device through a
|
|
||||||
{@link android.bluetooth.BluetoothSocket}
|
|
||||||
or query information about the device such as its name, address, class, and
|
|
||||||
bonding state.</dd>
|
|
||||||
|
|
||||||
<dt>{@link android.bluetooth.BluetoothSocket}</dt>
|
|
||||||
<dd>This represents the interface for a Bluetooth socket
|
|
||||||
(similar to a TCP client-side {@link java.net.Socket}). This is the
|
|
||||||
connection point that allows an app to transfer data with another Bluetooth
|
|
||||||
device via {@link java.io.InputStream} and {@link java.io.OutputStream}.</dd>
|
|
||||||
<dt>{@link android.bluetooth.BluetoothServerSocket}</dt>
|
|
||||||
|
|
||||||
<dd>This represents an open server socket that listens for incoming requests
|
|
||||||
(similar to a TCP server-side {@link java.net.ServerSocket}).
|
|
||||||
When attempting to connect two Android devices, one device will need to open
|
|
||||||
a server socket with this class. When a connection is accepted, a new
|
|
||||||
{@link android.bluetooth.BluetoothSocket} will be returned,
|
|
||||||
which can be used to manage the connection and transfer data.</dd>
|
|
||||||
|
|
||||||
<dt>{@link android.bluetooth.BluetoothClass}</dt>
|
|
||||||
<dd>This represents the Bluetooth class for a device which describes general
|
|
||||||
characteristics and capabilities of a device. This class and its subclasses
|
|
||||||
don't provide any actual functionality. The sub-classes are entirely composed
|
|
||||||
of constants for the device and service class definitions.</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<h3>Example Procedure</h3>
|
|
||||||
|
|
||||||
<p>For example, here's an pseudo-code procedure for discovering and
|
|
||||||
connecting a remote device, and transfering data:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Register a {@link android.content.BroadcastReceiver} that accepts the
|
|
||||||
{@link android.bluetooth.BluetoothDevice#ACTION_FOUND} Intent.</li>
|
|
||||||
<li>Call {@link android.bluetooth.BluetoothAdapter#getDefaultAdapter} to
|
|
||||||
retrieve the Android system's local
|
|
||||||
{@link android.bluetooth.BluetoothAdapter}.</li>
|
|
||||||
<li>Call {@link android.bluetooth.BluetoothAdapter#startDiscovery()
|
|
||||||
BluetoothAdapter.startDiscovery()} to scan for local devices. This is where
|
|
||||||
the BroadcastReceiver comes in; Android now scans for devices and will
|
|
||||||
broadcast the {@link android.bluetooth.BluetoothDevice#ACTION_FOUND} Intent
|
|
||||||
for each remote device discovered. The
|
|
||||||
{@link android.content.BroadcastReceiver}
|
|
||||||
you created will receive each Intent.</li>
|
|
||||||
<li>The {@link android.bluetooth.BluetoothDevice#ACTION_FOUND} Intent
|
|
||||||
includes the {@link android.bluetooth.BluetoothDevice#EXTRA_DEVICE}
|
|
||||||
Parcelable extra, which is a {@link android.bluetooth.BluetoothDevice}
|
|
||||||
object. Extract this from the Intent and call
|
|
||||||
{@link android.bluetooth.BluetoothDevice#createRfcommSocketToServiceRecord(java.util.UUID)
|
|
||||||
BluetoothDevice.createRfcommSocketToServiceRecord()}
|
|
||||||
to open a {@link android.bluetooth.BluetoothSocket} with a chosen
|
|
||||||
remote device.</li>
|
|
||||||
<li>Call {@link android.bluetooth.BluetoothSocket#connect()
|
|
||||||
BluetoothSocket.connect()} to connect with the remote device.</li>
|
|
||||||
<li>When successfully connected, call
|
|
||||||
{@link android.bluetooth.BluetoothSocket#getInputStream()
|
|
||||||
BluetoothSocket.getInputStream()} and/or
|
|
||||||
{@link android.bluetooth.BluetoothSocket#getOutputStream()
|
|
||||||
BluetoothSocket.getOutputStream()} to retreive an
|
|
||||||
{@link java.io.InputStream} and {@link java.io.OutputStream}, respectively,
|
|
||||||
which are hooked into the socket.</li>
|
|
||||||
<li>Use {@link java.io.InputStream#read(byte[]) InputStream.read()} and
|
|
||||||
{@link java.io.OutputStream#write(byte[]) OutputStream.write()} to transfer
|
|
||||||
data.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p class="note"><strong>Note:</strong>
|
<p class="note"><strong>Note:</strong>
|
||||||
Not all Android devices are guaranteed to have Bluetooth functionality.</p>
|
Not all Android devices are guaranteed to have Bluetooth functionality.</p>
|
||||||
|
|||||||
@@ -34,6 +34,12 @@ page.title=Bluetooth
|
|||||||
<li><a href="#ManagingAConnection">Managing a Connection</a></li>
|
<li><a href="#ManagingAConnection">Managing a Connection</a></li>
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
|
<h2>See also</h2>
|
||||||
|
<ol>
|
||||||
|
<li><a href="{@docRoot}resources/samples/BluetoothChat/index.html">Bluetooth Chat sample
|
||||||
|
app</a></li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -826,4 +832,7 @@ terminated at any time by closing the {@link android.bluetooth.BluetoothSocket}.
|
|||||||
This should always be called when you're done using the Bluetooth
|
This should always be called when you're done using the Bluetooth
|
||||||
connection.</p>
|
connection.</p>
|
||||||
|
|
||||||
|
<div class="special">
|
||||||
|
<p>For a complete demonstration using the Bluetooth APIs, see the <a
|
||||||
|
href="{@docRoot}resources/samples/BluetoothChat/index.html">Bluetooth Chat sample app</a>.</p>
|
||||||
|
</div>
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
page.title=Wireless Controls
|
page.title=Wireless Controls
|
||||||
@jd:body
|
@jd:body
|
||||||
|
|
||||||
|
Go away.
|
||||||
|
|
||||||
|
<!--
|
||||||
<h2>Wi-Fi</h2>
|
<h2>Wi-Fi</h2>
|
||||||
<p>The Wi-Fi APIs provide a means by which application can communicate with the lower-level
|
<p>The Wi-Fi APIs provide a means by which application can communicate with the lower-level
|
||||||
wireless stack that provides Wi-Fi network access. Almost all information from the device supplicant
|
wireless stack that provides Wi-Fi network access. Almost all information from the device supplicant
|
||||||
@@ -12,8 +13,11 @@ interactions include the ability to scan, add, dave, terminate and initiate conn
|
|||||||
|
|
||||||
|
|
||||||
<h2>Bluetooth</h2>
|
<h2>Bluetooth</h2>
|
||||||
<p>The Bluetooth APIs allow applications to scan, connect and pair with other Bluetooth devices.
|
<p>The Android platform includes support for the Bluetooth network stack, which allows a device to
|
||||||
THESE APIS ARE NOT YET AVAILABLE.</p>
|
wirelessly exchange data with other Bluetooth devices. The application framework provides access to
|
||||||
|
the Bluetooth functionality through the Android Bluetooth APIs. These APIs let applications
|
||||||
|
wirelessly connect to other Bluetooth devices, enabling point-to-point and multipoint wireless
|
||||||
|
features.</p>
|
||||||
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -15,4 +15,4 @@ parent.link=index.html
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
TODO
|
Go away.
|
||||||
Reference in New Issue
Block a user