Требуется ли для подключения BLE разрешение ACCESS_BACKGROUND_LOCATION в android 10? - PullRequest
0 голосов
/ 30 марта 2020

У меня есть планировщик заданий, который ищет устройства BLE и подключается в фоновом режиме. Android 10 представило новое разрешение ACCESS_BACKGROUND_LOCATION. Требуется ли разрешение ACCESS_BACKGROUND_LOCATION для подключения устройства BLE в фоновом режиме?

Ответы [ 2 ]

2 голосов
/ 30 марта 2020

https://developer.android.com/guide/topics/connectivity/bluetooth#Permissions упоминает только то, что приложению нужно ACCESS_FINE_LOCATION, поэтому я подозреваю, что вам не нужно ACCESS_BACKGROUND_LOCATION. Но я думаю, что, вероятно, это изменится в ближайшем будущем.

Быстрый просмотр https://android.googlesource.com/platform/packages/apps/Bluetooth/+/refs/tags/android-10.0.0_r32/src/com/android/bluetooth/gatt/GattService.java#1949 показывает, что, по-видимому, требуется только точное разрешение, но я мог что-то пропустить .

Я предлагаю вам просто попробовать только с ACCESS_FINE_LOCATION, чтобы увидеть, что происходит в фоновом режиме.

1 голос
/ 30 марта 2020

Думаю, эта статья поможет, так как в ней говорится о разрешении местоположения в android 11 и использовании BLE.

Местоположение .

также я бы порекомендовал вам используйте службы Foreground, чтобы дать вашему пользователю более полное представление о том, что делает ваше приложение, и дать им возможность определить, нужно ли ему давать вам разрешение один раз или всегда.

Запуск службы на переднем плане

...