-
Notifications
You must be signed in to change notification settings - Fork 117
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
iOS 9 and iOS 10: -canOpenURL: failed for URL #22
Comments
thanks for the heads up |
Did you edit your Info.plist? |
Yeah I added the code you provided to my plist (and read that link thx). Haven't tested it yet on ios9 tho. |
Ah, sorry. I tought that you had trouble implementing it :) |
Thank your help! |
how i do if urlschemes are from server . |
@seasun As an alternative you could use the new Universal Links for iOS 9. Or you could build the app with the old SDK using Xcode 6 until Apple forces you to use Xcode 7. There's no need for scheme registration using Xcode 6. |
Thank your help! But I used paypal , which sschemes should I add to LSApplicationQueriesSchemes. |
@babydance <key>LSApplicationQueriesSchemes</key>
<array>
<string>paypal</string>
</array> |
@ohh2ahh |
@babydance
|
@ohh2ahh |
@ohh2ahh |
@babydance |
For anyone working with an app where you can't know what might be linked to, I created a plugin to work around the issue. It's a simple plugin that injects a whitelist that covers commonly linked apps. Send me a PR if I forgot any. https://github.com/rjhilgefort/cordova-plugin-queries-schemes |
I had the same problem (ionic app running on iOS 9.2.1 built with XCode 7.2.1) and needed to add:
in
in |
where can i get the scheme of following ios app?: google hangouts, skype, ios mail app, my files, photo gallery and the scheme of on ios device installed apps? |
@ramogundogdu Unfortunately there isn't a complete register with url schemes. You can find known schemes of popular apps via a search engine. |
AppAvailability is working for me in Android - it opens right into the app. But on iOS its failing and thus gong to the company website. I have a hunch its the way I am calling the deeplink for iOS but can't find a better example to show me what I am doing wrong: Example app:
|
Are you testing your app on an actual iOS device with Lyft installed? Which iOS version are you running? And did you add <key>LSApplicationQueriesSchemes</key>
<array>
<string>lyft</string>
</array> in |
No....I did not have that in the -Info.plist file. My app is in beta test right now and all my iOS users are experiencing the same issue on their devices. All my testers are 9.2 or 9.3 (I think). the LSApplicationQueriesSchemes already existed so all I need to do is just add the i.e.:
|
@rolinger <key>LSApplicationQueriesSchemes</key>
<array>
<string>instagram</string>
<string>lyft</string>
<string>fb</string>
</array> |
Oh, I did read that previously but misunderstood it for something else. Getting it all added now, thanks |
AppAvailability Bug
appAvailability.check
returns alway error callback.Xcode error
-canOpenURL: failed for URL: "<scheme>://" - error: "This app is not allowed to query for scheme <scheme>"
Explanation
Apple changed the
canOpenURL
method on iOS 9. Apps which are checking for URL Schemes on iOS 9 and iOS 10 have to declare these Schemes as it is submitted to Apple. The article Quick Take on iOS 9 URL Scheme Changes expains the changes in detail.Solution: Add URL Schemes to the Whitelist
Simply open your app's .plist (usually
platforms/ios/<appname>/<appname>-Info.plist)
with an editor and add the following code with your needed Schemes.The text was updated successfully, but these errors were encountered: