iOS开发中的错误整理,IOS9中canOpenURL调用失败分析

由于IOS加入对用户隐私以及禁止扫描系统信息的控制,目前通过canOpenURL的方法来判断用户是否安装特定app,则会出现-canOpenURL: failed for URL: "ABC://app/*******/" - error: "This app is not allowed to query for scheme ABC"的错误,

同时也返回NO,直接通过openUrl也是没有反应。具体原因可以参考文章:Quick Take on iOS 9 URL Scheme Changes

修改起来很简单,只需要在plist中加入ABC的白名单即可,如:

<key>LSApplicationQueriesSchemes</key>

<array>

<string>ABC</string>

</array>

如图:


需要注意的时1:最多只能添加50个  2、目前只能对已知的url添加,调用成功。对于由服务器动态下发的,暂时没想好方法来解决,后续有解决方案再头部

原文地址:https://www.cnblogs.com/gchlcc/p/5569836.html