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

Air 30 Beta Geolocation permission issue on iOS 11+ #42

Open
BenLeffler opened this issue Jun 1, 2018 · 6 comments
Open

Air 30 Beta Geolocation permission issue on iOS 11+ #42

BenLeffler opened this issue Jun 1, 2018 · 6 comments

Comments

@BenLeffler
Copy link

Problem Description

I've reported this bug at https://tracker.adobe.com/#/view/AIR-4198661

In Air 30 Beta (30.0.0.103 BETA), when requesting permission for location services the Air runtime is not presenting the same dialog as Air 28 does, and as a result the appropriate permission is not given to allow access.

Steps to Reproduce

Create a new Geolocation instance within a fresh Adobe Air 30 Beta app installed on an iOS 11 device. Request permission and the app presents a permission request dialog box. Tapping "Allow" does not grant the app permission, and is effectively treated as if the user has tapped "Don't Allow"

Actual Result

The user is presented with an older style permission request dialog box instead of the new iOS 11 request dialog. Tapping "Allow" does not grant access to location services for the Adobe Air app.

air30betageopermission

Expected Result

The same permission dialog should appear as it does in the current Adobe Air 28 runtime, and permission should be granted when the user selects the appropriate method.

air28geopermission

Known Workarounds

None that I have found. However a native extension may present a workaround.

@urthling
Copy link

urthling commented Jun 7, 2018

Have you tried adding both the keys:
NSLocationWhenInUseUsageDescription & NSLocationAlwaysAndWhenInUseUsageDescription

Even though we only ask for in use - both of these are required and this appears to work as expected for us on all iOS 11+. We are seeing a new issue on older iOS devices running iOS 10.3.3 and lower - see here: https://forums.adobe.com/thread/2493072

@BenLeffler
Copy link
Author

Yep. Both those keys were included as well as the older NSLocationUsageDescription key. We ended up resolving the issue through utilising the Distriqt Location native extension in the end.

@urthling
Copy link

including the older key - is likely your issue btw

@BenLeffler
Copy link
Author

Incidentally I have tried every possible combination of including/excluding the three keys to the same effect unfortunately - and across multiple iOS devices with the same outcome. Maybe there are other underlying factors involved here if this can not be replicated by anyone else.

But as I said, we got around the issue by using a native extension (which also provided a better user experience in the context of the app we are creating)

@urthling
Copy link

urthling commented Jun 17, 2018

Ah, interesting.. btw, do older devices running iOS 10+ - like the old iPhone 5 work as expected with Distriq's ANE?

@lucien144
Copy link

lucien144 commented Sep 6, 2018

I'm experiencing similar issue, just other way around. I can't get the "When In Use" dialog to pop. It always asks for "Always" type of permissions.

iOS: 10.2
AIR SDK: 30.0.0.107
Geolocation.locationAlwaysUsePermission: false
Descriptor:

<key>NSLocationWhenInUseUsageDescription</key>
<string>Your current location may be used to search for plant nurseries nearby.</string>

Result

http://144.wtf/1U0xK8

Not only that the popup description is wrong, but the app also asks for wrong permission. And I can't find any workaround. I've tried all possible options of settings.

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

4 participants