Hello.
I’m making an app that organizes the user’s movement records when hiking.
So I want to encourage users to use the Precise Location
option all the time.
However, I saw a lot of pop-ups asking me to set location permissions on other apps, but I couldn’t find a pop-up or UX asking me to turn on the Precise Location
that was turned off. Is it against Apple's policy
to ask for this?
If you don’t violate it, I’d like to know how other apps ask users to turn on their permissions.
Thank you.
2
Answers
You can kindly ask users to enable precise location by presenting an
UIAlertController
which will contain description why you need it for, and action to navigate to app settings. When they press the action you will navigate to app settings likewise:Presenting simple UIAlert:
Also prior to displaying
UIAlertController
it would be nice to present some screenshot with some arrow pointing to "precise location" switch in settings, so it would be more clear what the user should do.P.S.
This
navigateToSystemSettings()
function should open your App settings. If it only opens the plain "Settings" instead, fix the issue by uploading app to testflight so that it appears among another apps that are presented on bottom of "Settings" app.You can use CLLocationManager‘s CLAccuracyAuthorization property to determine whether the user has full/reduced accuracy. Note that this is available from iOS 14 / macOS 11.
If the result is
.reducedAccuracy
, you can use requestTemporaryFullAccuracyAuthorization(withPurposeKey:completion:) to request temporary access to.fullAccuracy
.Don’t forget to fill in NSLocationTemporaryUsageDescriptionDictionary and use appropriate key in the function above.
It would look something like this