按相反顺序读取BLE指示

时间:2017-12-21 12:44:37

标签: android bluetooth-lowenergy

我正在使用兼容BLE的健康设备(可以存储测量值)来使用Android应用程序读取数据。我能够扫描存储读数的特定特征的服务和设置指示。虽然我能够听取指示并获取值,但指示从设备上保存的第一次读数开始到设备上的最新读数,需要花费大量时间才能获得最新值(特别是当设备存储大量数据时)价值观)。

有没有办法可以先获得最新的阅读量,这样我就可以停止阅读对我来说不再需要的更旧的值了。

以下是与启用所需特征的指示相关的代码段。

public static final UUID CCCD = UUID.fromString("00002902-0000-1000-8000-00805f9b34fb");

Boolean gattsetchar = gatt.setCharacteristicNotification(characteristic, true);
if (!gattsetchar){
    Log.e(TAG, "set characteristic=" + gattsetchar);
}

BluetoothGattDescriptor descriptor = characteristic.getDescriptor(CCCD);
if(descriptor != null){
    if ((characteristic.getProperties() & BluetoothGattCharacteristic.PROPERTY_INDICATE) != 0) {
            Log.d(TAG, "Enabling Indication");
            descriptor.setValue(BluetoothGattDescriptor.ENABLE_INDICATION_VALUE);
    }
}
Boolean writeDes = mBluetoothGatt.writeDescriptor(descriptor);
Log.d(TAG, "Write Descriptor " + writeDes + " " + descriptor.getCharacteristic().getUuid());

0 个答案:

没有答案