Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NSLocationAlwaysUsageDescription now mandatory? #111

Closed
NiklasMerz opened this issue Aug 31, 2018 · 9 comments
Closed

NSLocationAlwaysUsageDescription now mandatory? #111

NiklasMerz opened this issue Aug 31, 2018 · 9 comments

Comments

@NiklasMerz
Copy link
Member

It looks like the key NSLocationAlwaysUsageDescription is now mandatory, too. Should we document this?

This is the warning Apple sent after uploading the app:

"Missing Purpose String in Info.plist File. Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSLocationAlwaysUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting spring 2019, all apps submitted to the App Store that access user data will be required to include a purpose string.If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more (https://developer.apple.com/documentation/uikit/core_app/protecting_the_user_s_privacy)."

@lauvigne
Copy link

Is it the same as #105 ?

@NiklasMerz
Copy link
Member Author

Partly. #105 adds a method to request always permission. But if the description clarifies that both descriptions are needed this is fine.

@Ajaxy
Copy link

Ajaxy commented Sep 4, 2018

I do not use/turn on "always" mode anyhow especially, I only use regular geolocation, but Apple still complains about not having that NSLocationAlwaysUsageDescription. What am I doing wrong?

@timbru31
Copy link
Member

timbru31 commented Sep 4, 2018

@Ajaxy The message from Apple actually states this case:

While your app might not use these APIs, a purpose string is still required

@Ajaxy
Copy link

Ajaxy commented Sep 4, 2018

Got it, thanks for clarifying

@NiklasMerz
Copy link
Member Author

That´s why I suggested adding something to the docs. Confuse me, too.

edit-config like described does not work for me. I have to use config-file.

@sjokoladepudding
Copy link

I've found this article from apple:
https://developer.apple.com/documentation/corelocation/choosing_the_authorization_level_for_location_services/requesting_always_authorization

It says:

Important
You are required to include the NSLocationWhenInUseUsageDescription and NSLocationAlwaysAndWhenInUseUsageDescription keys in your app's Info.plist file. (If your app supports iOS 10 and earlier, the NSLocationAlwaysUsageDescription key is also required.) If those keys are not present, authorization requests fail immediately.

The NSLocationAlwaysAndWhenInUseUsageDescription is new to me. My app just got rejected, so I will try this too.

@piotr-cz
Copy link

There is a proposal on how to update documentation in #149

@breautek
Copy link
Contributor

Fixed by #181

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants