1、 在工程的 Manifest.xml 文件中声明蓝牙使用权限:
<uses-permission
android:name="android.permission.BLUETOOTH"/>
<uses-permission
android:name="android.permission.BLUETOOTH_ADMI
N"/>
2、 蓝牙相关的 API 都被封装在 android..bluetooth 包下,主要包含以下几个类:
(1) BluetoothAdapter 本地蓝牙适配器,用于打开、关闭蓝牙设备,以及查找附近的蓝
牙设备,允许其他蓝牙设备查找自己。主要函数:
Static BluetoothAdapter getDefaultAdapter() 获取本机蓝牙适配器
boolean enable() 打开蓝牙设备
boolean disable() 关闭蓝牙设备
String getName() 获取本机蓝牙设备的名称
String getAddress() 获取本机蓝牙设备的 MAC 地址
boolean setName(String name) 设置本机蓝牙设备的名称
boolean startDiscovery() 开始查找附近的蓝牙设备
boolean cancelDiscovery() 停止查找附近的蓝牙设备
boolean isEnabled() 检查本机蓝牙设备是否打开
boolean isDiscovering() 检查本机蓝牙设备是否正在查找其他蓝牙设备
int tState() 查询本机蓝牙设备的状态
BluetoothDevice getRemoteDevice(String Address) 根据 MAC 地址获取远端蓝牙设备
Set< BluetoothDevice > getBondedDevices() 获取已配对的设备列表
BluetoothServerSocket listenUsingInsecureRfcommWithServiceRecord(String name, UUID
uuid) 创建一个不可靠的套接字,并开启监听
BluetoothServerSocket listenUsingRfcommWithServiceRecord(String name, UUID uuid) 创
建一个可靠的(加密的、有数字签名的)套接字,并开启监听 -------------------备注 1
(2) BluetoothDevice 描述远端蓝牙设备,用于访问蓝牙设备的名称、MAC 地址,绑定
状态,创建连接,主要函数:
String getName() 获取本机蓝牙设备的名称
String getAddress() 获取本机蓝牙设备的 MAC 地址
int getBondState() 获取绑定状态
ParcelUuids[] getUuids() 获取蓝牙设备所支持服务的 UUID 列表
BluetoothSocket createInsecureRfcommSocketToServiceRecord(UUID uuid) 创建一个不可
靠的套接字,用于连接服务器
BluetoothSocket createRfcommSocketToServiceRecord(UUID uuid) 创 建 一 个 可 靠 的
(加密的、有数字签名的)套接字,用于连接服务器