Xcode 13 or iOS15 BUG?

I use "LSApplicationQueriesSchemes" in the project Info.plist, which contains 219 url schemes.

I use the urlscheme contained in this file to determine if an app is installed on our user's phone, which worked fine before iOS15, but recently I had a problem after submitting an app update using xcode13, when I went to check if an app was installed, it prompted me "-canOpenURL:failed for URL: "xxxx://" - error: "This app is not allowed to query for scheme xxxx".

I have added xxxx to the LSApplicationQueriesSchemes, but I still get this error, I tested changing the location or reducing the number of urlscheme included in the LSApplicationQueriesSchemes and found that The first 35 or so of the LSApplicationQueriesSchemes are working fine, and the first 35 or so after that will prompt this error. I don't know if this is a bug in xcode13 or a problem with ios15, it's still not right.

  • This problem only appears on phones upgraded with iOS15

  • I found this problem with xcode13 run on my iphone, but not with xcode12, so I went back to xcode12 for now to package and upload

Add a Comment

Replies

There seems to be a problem in iOS 15 over 50 URL at least.

See here:

https://developer.apple.com/forums/thread/689011

And submit bug report.

  • But note this 50 item limit is deliberate new behavior (see the updated documentation linked in that other thread) so it’s probably better to frame your feedback as a request for refinement rather than a bug. As mentioned in the other thread, maybe well behaved apps could be accommodated by a new entitlement or by special attention during review.

  • (Duplicate comment removed due to forum problem. I commented, then the comment disappeared, so I added the comment again, and then the original comment reappeared. Ugh.)

Add a Comment

If your app is linked on or after iOS 9.0, you must declare the URL schemes you pass to this method by adding the LSApplicationQueriesSchemes key to your app's Info.plist file. This method always returns false for undeclared schemes, whether or not an appropriate app is installed. Apps linked on or after iOS 15 are limited to a maximum of 50 entries in the LSApplicationQueriesSchemes key.

https://developer.apple.com/documentation/uikit/uiapplication/1622952-canopenurl