На некоторых устройствах Android (независимо от версии ОС или Bluetooth) возникает проблема после подключения устройства BLE.Услуги / характеристики не актуальны.Обычно это происходит, когда периферийное устройство меняет свои услуги.(пока приложение не было подключено)
В этом состоянии невозможно использовать устройство.Чтобы проверить эту проблему, вы можете обнаружить все характеристики и увидеть, что из кэша устройства Android загружены устаревшие (более не существующие) характеристики.
Текущее решение (не программно) Сброс состояния включения Bluetooth в ОСсистемные настройки андроида.(выключите и включите состояние Bluetooth)
Также в приложении nRF Connect
есть функция под названием Refresh services
![](https://user-images.githubusercontent.com/3133/40985370-f3463956-68b1-11e8-81d6-e05c358570cb.jpg)
(игнорировать «Анализировать известные характеристики». Это непроблема) Этот проект (nRF Connect) не является открытым исходным кодом.Я не знаю, как «Обновить службы» / «Очистить кэш», чтобы избежать загрузки неправильных служб / характеристик при подключении.
Как реализовать это в Android (Java)?
Справочная информация: я использую ионный с родным плагином ble.Я мог бы реализовать собственный код прямо в плагине.