Skip to content

Commit bef41bc

Browse files
committed
Don't request bg location permission unless using standard or realtime on < api level 31
1 parent cc973d1 commit bef41bc

File tree

1 file changed

+6
-9
lines changed

1 file changed

+6
-9
lines changed

src/Shiny.Locations/Platforms/Android/AbstractGpsManager.cs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,6 @@ public AccessState GetCurrentStatus(GpsRequest request)
8989
protected virtual List<string> GetPermissionSet(GpsRequest request)
9090
{
9191
var realtime = request.BackgroundMode == GpsBackgroundMode.Realtime;
92-
var requestBg = false;
9392
var permissionSet = new List<string> { P.AccessCoarseLocation };
9493
if (request.Accuracy > GpsAccuracy.Low)
9594
permissionSet.Add(P.AccessFineLocation);
@@ -98,26 +97,24 @@ protected virtual List<string> GetPermissionSet(GpsRequest request)
9897
{
9998
case GpsBackgroundMode.Standard:
10099
// just always request BG
101-
requestBg = !realtime && OperatingSystem.IsAndroidVersionAtLeast(29);
100+
if (OperatingSystemShim.IsAndroidVersionAtLeast(29))
101+
permissionSet.Add(P.AccessBackgroundLocation);
102102
break;
103103

104104
case GpsBackgroundMode.Realtime:
105105
// just always request BG
106-
requestBg = !realtime && OperatingSystem.IsAndroidVersionAtLeast(29);
107-
108-
if (OperatingSystem.IsAndroidVersionAtLeast(31))
106+
if (OperatingSystemShim.IsAndroidVersionAtLeast(31))
109107
permissionSet.Add(P.ForegroundService);
108+
else
109+
permissionSet.Add(P.AccessBackgroundLocation);
110110

111-
if (OperatingSystem.IsAndroidVersionAtLeast(33))
111+
if (OperatingSystemShim.IsAndroidVersionAtLeast(33))
112112
permissionSet.Add(P.PostNotifications);
113113

114114
if (OperatingSystem.IsAndroidVersionAtLeast(34))
115115
permissionSet.Add(P.ForegroundServiceLocation);
116116
break;
117117
}
118-
if (requestBg && OperatingSystem.IsAndroidVersionAtLeast(29))
119-
permissionSet.Add(P.AccessBackgroundLocation);
120-
121118
return permissionSet;
122119
}
123120

0 commit comments

Comments
 (0)