Flutter - чтение flutter_blue никогда не завершается для характеристик report и report_map HID через устройство GATT - PullRequest
0 голосов
/ 17 января 2020

Я пытаюсь настроить прослушиватель для нажатия кнопки Bluetooth в приложении флаттера с помощью flutter_blue, запущенного тестированием с примером приложения, и не могу заставить его работать.

Шаги для воспроизведения:

  1. Запустить приложение
  2. Подключиться к HID через устройство GATT (работает флешка ie или любая кнопка) и сервисы сканирования
  3. Открыть сервис HID (0x1812)
  4. Нажмите, чтобы прочитать характеристики отчета c (0x2A4D), и он никогда не заканчивается.
    • В моем случае это появляется дважды, но, насколько я понимаю, это действительно для стандарта.
    • То же самое происходит с характеристиками Report_Map c (0x2A4B).

Другие характеристики и даже некоторые дескрипторы характеристик отчета c могут быть прочитаны правильно, поэтому это не проблема с подключением или устройством.

Также проверено включение режима уведомлений и ожидание данных, но ничего не получено при нажатии кнопки.

Отладка, можно увидеть, что, если ожидается вызов, он никогда не вернется (и в будущем произойдет чтение ошибка из-за того, что чтение уже выполняется).

Об устройстве: оно определяется как ввод с клавиатуры на Android, и событие нажатия кнопки обрабатывается android правильно, оно вызывает увеличение громкости.

...