一起Talk Android吧(第二百九十一回:Android中的BLE开发:获取服务二)
Posted talk_8
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一起Talk Android吧(第二百九十一回:Android中的BLE开发:获取服务二)相关的知识,希望对你有一定的参考价值。
看官们,我们在上一章回中介绍了BLE开发的蓝牙连接设备,本章回中我们将介绍BLE开发中获取服务的例子,闲话休提,言归正转。让我们一起Talk android吧!
看官们,上一章回中介绍了获取服务第一个步骤:查找服务,本章回中将介绍第二个步骤:获取服务。
执行查找服务后,如果查找到了服务那么就会回调onServicesDiscovered()方法,该方法是BluetoothGattCallback的回调方法,实现回调方法的典型示例如下:
mBluetoothGattCallback = new BluetoothGattCallback() {
@Override
public void onServicesDiscovered(BluetoothGatt gatt, int status) {
super.onServicesDiscovered(gatt, status);
if(status == BluetoothGatt.GATT_SUCCESS) {
mGattServices = (ArrayList<BluetoothGattService>) gatt.getServices();
} else {
mGatt.close();
}
}
}
在上面的代码中mGattServices用来存放获取到的服务,这里存放了所有的服务,我们需要这些服务中获取我们需要的服务,具体操作如下:
for (BluetoothGattService service: mGattServices) {
if (service.getUuid().toString().equalsIgnoreCase(serviceUUIDString)) {
mResultService = service;
}
}
在上面的代码中我们通过循环遍历了所有的服务,如果某个服务的UUID与我们提供的UUID(保存在serviceUUIDString中)一致,那么这个服务就是我们程序中需要的服务。
各位看官,关于Android中BLE开发获取服务的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!
以上是关于一起Talk Android吧(第二百九十一回:Android中的BLE开发:获取服务二)的主要内容,如果未能解决你的问题,请参考以下文章
一起Talk Android吧(第三百九十一回:修改BottomNavigationView中的图标和文字颜色)
一起Talk Android吧(第二百九十九回:Java中的Timer)
一起Talk Android吧(第二百九十回:Android中的BLE开发:获取服务一)
一起Talk Android吧(第二百九十七回:Android中的BLE开发:断开设备连接)