Я делаю приложение для BLE, и мне нужно прочитать характеристику, которая содержит 22 байта.У меня 2 кнопки - одна для отправки запроса, другая для чтения характеристики.Вот код:
void readDatafromBLE()
{
byte[] str = characteristicRX.getValue();
String data = new String(str, Charset.forName("utf-8"));
if (data == null)
consoleData.setText("Data still null");
else
consoleData.setText(data);
}
void sendDataToBLE(String str)
{
final byte[] tx = str.getBytes();
if (mConnected)
{
characteristicTX.setValue(tx);
mBluetoothLeService.writeCharacteristic(characteristicTX);
mBluetoothLeService.readCharacteristic(characteristicRX);
}
}
Проблема заключается в том, что всякий раз, когда я пытаюсь прочитать данные, в моем TextDsoleData TextView я получаю один случайный байт данных из этих 22 байтов, а не все.В чем может быть проблема здесь?