Skip to content

Commit

Permalink
Added requesting location permission on Android 12+ when scanning
Browse files Browse the repository at this point in the history
(needed on some phones)
  • Loading branch information
mbalamut authored and chipweinberger committed May 2, 2023
1 parent 834f0da commit d562274
Showing 1 changed file with 10 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -268,8 +268,16 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull Result result) {
ensurePermissionBeforeAction(Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ? Manifest.permission.BLUETOOTH_SCAN : Manifest.permission.ACCESS_FINE_LOCATION, (grantedScan, permissionScan) -> {
if (grantedScan) {
ensurePermissionBeforeAction(Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ? Manifest.permission.BLUETOOTH_CONNECT : null, (grantedConnect, permissionConnect) -> {
if (grantedConnect)
startScan(call, result);
if (grantedConnect) {
ensurePermissionBeforeAction(Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ? Manifest.permission.ACCESS_FINE_LOCATION : null, (grantedLocation, permissionLocation) -> {
if (grantedLocation) {
startScan(call, result);
}
else
result.error(
"no_permissions", String.format("flutter_blue plugin requires %s for scanning", permissionLocation), null);
});
}
else
result.error(
"no_permissions", String.format("flutter_blue plugin requires %s for scanning", permissionConnect), null);
Expand Down

0 comments on commit d562274

Please sign in to comment.