Я разрабатываю приложение для Android. Вначале это приложение показывает пользователю список устройств Bluetooth, и когда он выбирает один из них, он открывает другое действие.
Моя цель: после того, как пользователь снова откроет приложение, приложение должно будет запомнить устройство, и ему нужно попытаться подключиться к нему.
Теперь я получил свою цель таким образом:
- Я запоминаю в предпочтении MAC-адрес выбранного устройства
- Когда пользователь снова откроет приложение, приложение выполнит скрытое сканирование и попытается подключиться к устройству с тем же MAC-адресом.
- для получения адреса mac я использую функцию getAddress() (когда я пытаюсь подключиться к периферийной части Android, эта функция дает мне некоторая проблема, поскольку устройство меняет свой MAC-адрес на каждом начинается:/)
Есть лучший способ получить то же самое?
Отключить тему: функция onScanResult в ScanResult некоторое время возвращает мне нулевое устройство, нормально ли это? У меня есть startLeScan (UUID [] serviceUuids, обратный вызов BluetoothAdapter.LeScanCallback), и после леденца я использую новую версию startLeScan с Scanfilter. Это может быть проблема?