Каков правильный метод чтения характеристики ГАТТ в Android?
пытаясь прочитать значение характеристики Bluetooth с низким энергопотреблением GATT в Android API 18, я столкнулся со следующей дилеммой: каков правильный способ получить значение, хранящееся в характеристике? И на каком уровне стека должно происходить это действие?
проводя свои собственные исследования, я наткнулся на то, что я понимаю, это два возможных метода:
- BluetoothGatt.readCharacteristic(BluetoothGattCharacteristic характеристика)
-
BluetoothGattCharacteristic.getValue ()
public void onClick(View v){ byteValue = mBTValueCharacteristic.getValue(); if ((byteValue[0] & 0x01) == 1) byteValue[0] = 0x00; else byteValue[0] = 0x01; mBTValueCharacteristic.setValue(byteValue); mBTGatt.writeCharacteristic(mBTValueCharacteristic); }
выше-исходный код, который привел меня к этой проблеме. В нем я пытаюсь прочитать значение характеристики и просто переключить ее состояние с помощью кнопки.
1 ответов
BluetoothGatt.readCharacteristic(BluetoothGattCharacteristic characteristic)
эта функция обновляет объект BluetoothGattCharacteristic (на вашем устройстве Android), используя характеристическое значение из Bluetooth .
BluetoothGattCharacteristic.getValue()
эта функция является просто функцией геттера объекта BluetoothGattCharacteristic. Нет никакой транзакции между android и устройством bluetooth.