Android 建立蓝牙连接
- 申请蓝牙使用权限
|
|
请求打开蓝牙
1 2
Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(intent,1);
获取蓝牙适配器
1
mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
通过蓝牙设备地址构造 Device
1
mDevice = mBlueToothAdapter.getRemoteDevice("XX:XX:XX:XX:XX:XX");
创建 RFCOMM socket,连接到对端蓝牙指定服务
UUID mUUID = UUID.fromString("c7f94713-891e-496a-a0e7-983a0946126e"); mBluetoothSocket = mDevice.createRfcommSocketToServiceRecord(mUUID); mBluetoothSocket.connect();
使用 socket 进行数据收发
1 2 3 4 5 6 7 8 9
// 获取连接 socket 的输入流 inputStream = mBluetoothSocket.getInputStream(); // 读取数据 inputStream.read(buffer); // 获取连接 socket 的输出流 outputStream = mBluetoothSocket.getOutputStream(); // 写入数据 outputStream.write(buffer);
关闭 socket
1
mBluetoothSocket.close();