Due to privacy changes to help users’ privacy in Android 10, new fine location permissions are required in order to use the BLE API.
Beginning in Android 6.0 (API level 23), location is mandatory to scan for BLE peers and hence necessary to use this SDK. Since this very Android release, users grant permissions to apps while it is running and not just when they install the app. While coarse location was enough for devices starting with Android 6.0 (API level 23) and up to Android 9.0 (API level 28), with the introduction of Android 10.0 (API level 29) fine location must be granted before any BLE work is performed.
These permissions are classified as dangerous and consequently, they must be declared in the Manifest and asked at runtime. Once the user grants either coarse or fine permission to your app, you must ensure location is enabled, otherwise it won’t be able to scan any locks.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article