• Android蓝牙通信开发教程(详解版)

    Android 系统提供蓝牙 API 包 android.bluetooth,允许手机设备通过蓝牙与其他设备进行无线连接。

    Android 的蓝牙 API 可提供以下功能:

    • 查找并配对蓝牙设备。
    • 建立 RFCOMM 通道。
    • 通过服务发现(Device Discovery)与其他无线设备进行连接。
    • 与其他设备进行蓝牙数据传输。
    • 管理多个蓝牙连接。

    需要说明的是,Android 模拟器不支持蓝牙功能,因此蓝牙相关的应用程序只能在真机上调试。

    要使用蓝牙功能,需要在 AndroidManifest.xml 中声明相应权限。蓝牙权限有两种,分别为:

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

    或者:

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

    如果想在应用程序中请求或者建立蓝牙连接并传递数据,必须声明 Bluetooth 权限。若想初始化设备发现功能或者对蓝牙设置进行更改,则必须声明 BLUETOOTH_ADMIN 权限。

    要在应用程序中使用蓝牙功能,必须保证当前设备具有蓝牙并且启用该功能。若当前设备支持蓝牙,但是没有启用相关功能,则需要人工启用蓝牙功能。

    首先使用 BluetoothAdapter 类的对象来确认设备具有蓝牙功能,然后使用 Intent 开启蓝牙功能。相关代码如下:

    BluetoothAdapter mBluetoothAdapter=BluetoothAdapter.getDefaultAdapter(); 
    if (mBluetoothAdapter==null) {
        //设备不支持蓝牙功能
        return;
    }
    //设备支持蓝牙功能
    if (!mBluetoothAdapter.isEnabled()) {
        //用于启动蓝牙功能的 Intent
        Intent enableBtIntent=new Intent (BluetoothAdapter.ACTION_REQUEST_ENABLE);
        startActivityForResult (enableBtIntent, REQUEST_ENABLE_BT);
    }

    startActivityForResult(enableBtIntent,REQUEST_ENABLE_BT) 调用后,会显示如图 1 所示的对话框,要求用户确认是否启用蓝牙功能。

    请求启用蓝牙功能对话框
    图 1  请求启用蓝牙功能对话框

更多...

加载中...