-canOpenURL:URL失败:" itms-books://" - 错误:"此应用程序不允许查询方案itms-books"

时间:2015-09-23 04:52:58

标签: ios9 xcode7

我刚启动xcode 7稳定版。在我目前的项目中,我正在从webservice下载图像。在xcode 6.4工作正常。现在它没有显示任何图像并在日志中显示警告

  

-canOpenURL:网址失败:" itms-books://" - 错误:"此应用不允许查询方案itms-books"

     

App Transport Security已阻止明文HTTP(http://)资源   负载,因为它是不安全的。可以通过配置临时例外   您应用的Info.plist文件。

3 个答案:

答案 0 :(得分:18)

这是Apple在iOS 9中构建的任何应用上实施的新强制安全措施。

到目前为止,唯一的解决方案是在info.plist文件中添加一个带有Key LSApplicationQueriesSchemes的条目,并添加" itms-books"以及您的应用将在此阵列中链接到的任何其他网址方案。

LSApplicationQueriesSchemes

苹果此举的主要解释是,一些应用程序过去常常利用canOpenURL:方法的功能来扫描手机中安装的应用程序,以便通过选择性广告或其他方式定位您。不是那么仁慈&#34 34;动机。

请注意,您可以注册的应用数量上限为50。

答案 1 :(得分:4)

您可能还需要向plist添加另一个名为LSApplicationQueriesSchemes的键(类型数组) 并将'itms-books'方案添加为字符串项,以允许canOpenURL对其进行测试。

答案 2 :(得分:2)

我发现我的问题我在info.plist文件中添加了密钥。

添加词典NSAppTransportSecurity - >在项目的info.plist文件中添加新的布尔键名称NSAllowsArbitraryLoads。