iOS 9 LaunchServices: ERROR: There is no registered handler for URL scheme itms-services

We have some in-house apps and before iOS 9, the apps will open a link like "itms-services://" after version compare, the new version apps will be downloaded and install.



But after we tested on iOS 9, we found the apps cannot open the link "itms-services://" link, got error like "LaunchServices: ERROR: There is no registered handler for URL scheme itms-services"



The code we used to update the app:


let downloadUrl = NSURL(string: url)

UIApplication.sharedApplication().openURL(downloadUrl!)



We have tested put "itms-services", "itms-services://" and the full URL into "LSApplicationQueriesSchemes" in plist file. But still not work.

Danial,


I ran into this same issue. I really wish they would fix this among other things they seem to have intentionally broken in iOS 9 for Enterprise Development.


However, as a workaround, I found that if you create a shortened url using the itms-services url, using openURL works just fine. Bit.ly doesn't support the itms-services protocol, but t i n y url dot com does.


let downloadUrl = NSURL(string: "http://example.com/blahblah") //Points to itms-services://?action=download-manifest&url=https://example.com/blahblah.plist

UIApplication.sharedApplication().openURL(downloadUrl!)


Good luck!


Joe.

iOS 9 LaunchServices: ERROR: There is no registered handler for URL scheme itms-services
 
 
Q