BLE служба переднего плана для предотвращения DeadObjectException

Когда мое Android-приложение работает в течение длительного времени (получение данных каждую секунду с использованием BLE), я обычно получаю DeadObjectException при вызове readRemoteRssi(). Я думаю, что причина, по которой я получаю это исключение, заключается в том, что ОС убивает процесс BluetoothGatt.

  1. Правильно ли использовать подключение BLE и логику чтения данных в Foreground Service? операционная система не остановит процесс, заставив его прекратить получать данные или аварийно завершить работу?

  2. Лучше перехватить DeadObjectException и попытаться восстановить соединение? если так, как я могу поймать это (попытка / ловить на readRemoteRssi не работала)?

0 ответов

Другие вопросы по тегам