Ios9.0 canOpenURL: failed for URL: "xx" - error:"This app is not allowed to query for scheme xx"
2016-01-25 09:27
746 查看
字数461
阅读1511 评论0 喜欢9
控制台输出
如图是在我启动一个 Xcode 7 + iOS 9 的 App 之后,控制台的输出。
这在 Xcode 6.4 + iOS 8 时,是不会有的情况,原因是【为了强制增强数据访问安全, iOS9 默认会把所有从
下面说解决方案:
①如果你的输出信息是-canOpenURL: failed for URL: "kindle://home" - error: "This app is not allowed to query for scheme kindle"
set Bitcode to NO
去你的 target 里面的 Build Settings 下的 Enable Bitcode,把它设置成 NO,这不一定会阻挡你的控制台继续输出这条信息,但是可以保证你的 App 正常运行。
②如果你的输出信息是 xxxx - error: "This app is not allowed to query for scheme xxxx"
(在这里因为我的 App 集成了分享到QQ、微信、微博的功能,xxxx部分我看到了 mqq、wechat、sinaweibosso 等多条信息)
Info.plist
去 Info.plist 里面建立一个叫 LSApplicationQueriesSchemes 的 Array,把你在xxxx部分看到的词汇一个一个填进去,直至控制台没有任何相关输出即可。
③关于其他通过 WebView 访问 http 网址引发的控制台报错信息
Info.plist 中设置 ATS
如之前所说,Apple 希望我们访问相对安全的 HTTPS,所以在你需要访问 HTTP 时,
虽 Apple 不建议,但可通过在 Info.plist 中声明如上图所示的内容,倒退回不安全的网络请求,这样依然能让 App 访问指定 HTTP,甚至任意的 HTTP。
阅读1511 评论0 喜欢9
控制台输出
如图是在我启动一个 Xcode 7 + iOS 9 的 App 之后,控制台的输出。
这在 Xcode 6.4 + iOS 8 时,是不会有的情况,原因是【为了强制增强数据访问安全, iOS9 默认会把所有从
NSURLConnection、
CFURL、
NSURLSession发出的 HTTP 请求,都改为 HTTPS 请求:iOS9.x-SDK编译时,默认会让所有从
NSURLConnection、
CFURL、
NSURLSession发出的 HTTP 请求统一采用 TLS 1.2(SSL 3.1) 协议。】
下面说解决方案:
①如果你的输出信息是-canOpenURL: failed for URL: "kindle://home" - error: "This app is not allowed to query for scheme kindle"
set Bitcode to NO
去你的 target 里面的 Build Settings 下的 Enable Bitcode,把它设置成 NO,这不一定会阻挡你的控制台继续输出这条信息,但是可以保证你的 App 正常运行。
②如果你的输出信息是 xxxx - error: "This app is not allowed to query for scheme xxxx"
(在这里因为我的 App 集成了分享到QQ、微信、微博的功能,xxxx部分我看到了 mqq、wechat、sinaweibosso 等多条信息)
Info.plist
去 Info.plist 里面建立一个叫 LSApplicationQueriesSchemes 的 Array,把你在xxxx部分看到的词汇一个一个填进去,直至控制台没有任何相关输出即可。
③关于其他通过 WebView 访问 http 网址引发的控制台报错信息
Info.plist 中设置 ATS
<key>NSAppTransportSecurity</key> <dict> <!--Include to allow all connections (DANGER)--> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
如之前所说,Apple 希望我们访问相对安全的 HTTPS,所以在你需要访问 HTTP 时,
虽 Apple 不建议,但可通过在 Info.plist 中声明如上图所示的内容,倒退回不安全的网络请求,这样依然能让 App 访问指定 HTTP,甚至任意的 HTTP。
相关文章推荐
- 如何用手机测试移动端页面
- 简单掌握iOS应用开发中sandbox沙盒的使用
- 解决Robotframework+Appium安卓自动化测试解锁手势密码操作
- Android进阶中级教程——1.1 Git的本地使用详解
- Android UML类图、流程图总结
- 【Deep Learning】Review:Faster R-CNN- TowardsReal-Time Object Detection with Region Proposal Networks
- [C#]JSONObject解析json,C# asp.net JSON解析
- 【Deep Learning】Review:Rich feature hierarchies for accurate object detection and semantic segmentati
- ios tableView那些事(四)tableView添加标题,头尾和改变cell的宽度---tableview
- Android中系统默认输入法设置的方法(输入法的显示和隐藏)
- App crash中的Exception type
- applicationContext.xml详解 spring+mybatis+struts
- 《Android源码设计模式解析与实战》读书笔记(二十五)
- Android Studio 从安装到配置使用
- Android横屏竖屏设置
- CSDN_博客__WapPc
- 学习iOS过程中对于代码规范和代码命名的个人总结
- CSDN_帖子__WapPc
- Android LayoutInflater详解
- 怎样从 Google Play 下载 Android 程序到电脑上