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 所示的对话框,要求用户确认是否启用蓝牙功能。
发表评论