diff options
author | TheScarastic <warabhishek@e.email> | 2022-06-03 12:56:24 +0530 |
---|---|---|
committer | TheScarastic <warabhishek@e.email> | 2022-06-06 13:45:58 +0530 |
commit | a2ec079c983e80613953261b02257710baa477b5 (patch) | |
tree | 0dc25a4c820852828a13f07c2c3ba254ac6e9dc8 /app/src/main/java/foundation/e/privacycentralapp | |
parent | 9a2955ae2debdb6f4e6abe02ca0dfc031a79185f (diff) |
advancedPrivacy: only grant permission if permission is already not granted
Diffstat (limited to 'app/src/main/java/foundation/e/privacycentralapp')
-rw-r--r-- | app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt index a475aa2..5446d3b 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt +++ b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt @@ -19,6 +19,7 @@ package foundation.e.privacycentralapp.domain.usecases import android.app.AppOpsManager import android.content.Context +import android.content.pm.PackageManager import android.location.Location import android.location.LocationListener import android.location.LocationManager @@ -62,10 +63,13 @@ class FakeLocationStateUseCase( get() = appContext.getSystemService(Context.LOCATION_SERVICE) as LocationManager private fun acquireLocationPermission() { - permissionsModule.toggleDangerousPermission( - appDesc, - android.Manifest.permission.ACCESS_FINE_LOCATION, true - ) + if (appContext.checkSelfPermission(android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + permissionsModule.toggleDangerousPermission( + appDesc, + android.Manifest.permission.ACCESS_FINE_LOCATION, + true + ) + } } private fun applySettings(isQuickPrivacyEnabled: Boolean, fakeLocation: Pair<Float, Float>?, isSpecificLocation: Boolean = false) { |