Я работаю с приложением Ionic 4 Framework с Cordova 5.0.3 и отлаживаю на Android 9.0 через ADB.Я использую Поддерживаемый плагин BLE для Ionic 4 и пытаюсь подключиться, прочитать и записать характеристики на определенном устройстве BLE.Однако при попытке прочитать характеристику команда приводит к пустому ArrayBuffer.Как устранить эту проблему, чтобы я мог понять, как правильно считать значение?
Я могу правильно подключиться к устройству, и, похоже, он правильно читает характеристику без каких-либо ошибок.Я дважды и трижды проверил правильность идентификаторов признаков и проверил через ADB Logcat, что он правильно передает команду read
с правильным идентификатором характеристики.Я также использовал Bluetooth-терминал , чтобы убедиться, что мое устройство BLE отправляет и получает правильные значения.
Следующий фрагмент кода является кодом, который я использую дляпрочитайте данные, предполагая, что параметры / идентификаторы верны:
this.ble.read(deviceId, serviceId, characteristicId).then((data) => {
alert(JSON.stringify(data));
}, error => {
alert(JSON.stringify(error));
}
, когда я вызываю функцию, это приводит к предупреждению, которое содержит {}
.Вызывается функция успеха, и она возвращает ArrayBuffer, но она пуста.
Я должен иметь возможность получить значение в виде ArrayBuffer, которое при преобразовании в строку должно привести к некоторой информации датчика отУстройство.Вместо этого я получаю пустой ArrayBuffer без информации.