0

I am using Expo Location to ask for location permission. iOS asks once and returns canaskagain = false. Android returns canaskagain = true on the first ask if user denies, thus asking again on the second load of the app. This is on a clean install of the app in both iOS and Android emulators.

ask location result: {"android": {"accuracy": "none", "scoped": "none"}, "canAskAgain": true, "expires": "never", "granted": false, "status": "denied"}
TrevPennington
  • 360
  • 4
  • 11
  • 1
    There's a third option in android which is 'Never ask again'. This option is shown to user if user denies the permission request for a few times. canAskAgain becomes false when user selects that option. https://stackoverflow.com/questions/30719047/android-m-check-runtime-permission-how-to-determine-if-the-user-checked-nev If you don't want to show the permission request again if user denied it, you can store this information in AsyncStorage https://docs.expo.io/versions/latest/sdk/async-storage/ and check if user has denied before asking again. – Ugur Eren Jul 12 '21 at 20:53

0 Answers0