#BLE蓝牙开发思路
BLE(即低功耗蓝牙)使用的是GATT协议,协议主要是由特征值characterister提供数据传输的。GATT由很多服务service组成,每个service又包含多个特征值characteristic,比如你读取手环中的心率就是从特定服务service中的特定characteristic中读取的,相应的向手环发送信息也是在相应的特征值中写入数据。所以只要能获取到各个数据类型的characteristic的唯一UUID,就可以获取到外围设备的各类数据。
接下来基于android5.0系统进行开发流程的介绍:
下面基于5.0系统的API开发
1.声明需要的权限
<uses-permission android:name="android.permission.BLUETOOTH"/> 使用蓝牙所需要的权限
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 使用扫描和设置蓝牙的权限(申明这一个权限必须申明上面一个权限)
<uses-featurandroid:name="android.hardware.location.gps/> 5.0以后系统使用蓝牙必须开启GPS定位权限
2. 初始化蓝牙设备
2.1 获取BluetoothAdapter
private BluetoothAdapter mBluetoothAdapter;
final BluetoothManager bluetoothManager = (BluetoothManager); getSystemService(Context.BLUETOOTH_SERVICE);
mBluetoothAdapter = bluetoothManager.getAdapter();
2.2 开启蓝牙