Android蓝牙开发入门:轻松掌握蓝牙连接与数据传输技巧

2026-10-24 0 阅读

蓝牙技术简介

蓝牙(Bluetooth)是一种无线技术标准,旨在实现固定设备、移动设备和楼宇个人域网之间的短距离通信。它通过无线电波在设备之间传输数据,广泛应用于手机、耳机、智能家居设备等领域。在Android开发中,蓝牙技术是实现设备间数据交换的重要手段。

蓝牙开发环境搭建

1. 安装Android Studio

首先,您需要在电脑上安装Android Studio,这是Android开发的官方IDE。下载并安装完成后,打开Android Studio,创建一个新的项目。

2. 添加蓝牙权限

在AndroidManifest.xml文件中,添加以下权限,以便应用程序可以访问蓝牙功能:

<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

3. 添加蓝牙API依赖

在build.gradle文件中,添加以下依赖项,以便使用蓝牙API:

implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.bluetooth:bluetooth:1.1.0'

蓝牙连接与数据传输

1. 扫描设备

要连接到蓝牙设备,首先需要扫描可用的设备。以下是一个简单的示例,演示如何扫描附近的蓝牙设备:

BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
Set<BluetoothDevice> pairedDevices = bluetoothAdapter.getBondedDevices();
Set<BluetoothDevice> foundDevices = new HashSet<>();

// 扫描蓝牙设备
bluetoothAdapter.startDiscovery(new BluetoothAdapter.LeScanCallback() {
    @Override
    public void onLeScan(BluetoothDevice device, int rssi, byte[] scanRecord) {
        foundDevices.add(device);
    }

    @Override
    public void onScanFailed(int errorCode) {
        // 处理扫描失败的情况
    }
});

2. 连接设备

找到目标设备后,可以使用以下代码连接到该设备:

BluetoothDevice device = foundDevices.iterator().next();
BluetoothSocket socket = device.createRfcommSocketToServiceRecord(UUID.fromString("00001101-0000-1000-8000-00805F9B34FB"));
socket.connect();

3. 数据传输

连接到设备后,可以使用以下代码发送和接收数据:

// 发送数据
OutputStream outputStream = socket.getOutputStream();
outputStream.write("Hello, Bluetooth!".getBytes());
outputStream.flush();

// 接收数据
InputStream inputStream = socket.getInputStream();
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
    String receivedData = new String(buffer, 0, bytesRead);
    // 处理接收到的数据
}

4. 断开连接

完成数据传输后,请关闭输出流和输入流,并断开连接:

inputStream.close();
outputStream.close();
socket.close();

总结

通过以上步骤,您已经掌握了Android蓝牙开发的基本技巧。在实际开发过程中,您可能需要根据具体需求调整代码,例如处理连接失败、数据传输异常等情况。希望本文能帮助您轻松入门Android蓝牙开发。

分享到: