前篇写的蓝牙数据传输,因为当时没要求就没写li连接配对,直接调用的已配对数据。
然后不出所料,测试版给出之后马上反馈回来,说要做连接配对功能,不然去设置里面弄太麻烦了....
行吧,谁叫我想偷懒叻。然后就做咯....这里重点表示一下:因为业务原因,我们使用的是4.4的android 版本,也就是说,蓝牙的配对不能直接用 createBond 方法实现,而需要使用反射的方法。具体下面代码都会记录下来。
那么现在开始撸代码吧。。
首先,初始化蓝牙适配器:
//初始化蓝牙
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
通过这个BluetoothAdapter ,我们可以获得与蓝牙这个实例。从中可以得到一些基本的东西,如: 启动设备发现(startDiscovery), 获取已配对设备(getBoundedDevices), 通过mac蓝牙地址获取蓝牙设备(getRemoteDevice), 从其它设备创建一个监听连接(listenUsingRfcommWithServiceRecord); 如果 mBluetoothAdapter == null ,则表示该手机不支持蓝牙。
我们需要去配置一个蓝牙权限,和注册广播:
<!--蓝牙权限-->
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN