iOS9请求https问题-记录

时间:2023-03-08 17:59:15

  iOS9 开始苹果将HTTP全改为HTTPS了,所以出现网络请求失败问题,解决办法:

1、改回HTTP:

    在info.plist文件中添加一个Key:NSAppTransportSecurity(字典类型),然后给它添加一个Key:NSAllowsArbitraryLoads(Boolean型),属性值设为YES.如下图:
      iOS9请求https问题-记录
2、添加白名单

   (这里主要针对运行程序打印‘-canOpenURL: failed for URL: "XXX" - error: "This app is not allowed to query for scheme XXX"’问题)(以友盟为例吧)

    将info.plist文件以Source Code方式打开,在里面添加类似下面的代码(一般官网上可找到处理办法的,http://dev.umeng.com/social/ios/ios9)

<key>LSApplicationQueriesSchemes</key>
<array>
<string>wechat</string>
<string>weixin</string>
<string>sinaweibohd</string>
<string>sinaweibo</string>
<string>sinaweibosso</string>
<string>weibosdk</string>
<string>weibosdk2.5</string>
</array>

3、之后运行程序,打印信息会变为‘-canOpenURL: failed for URL: "XXX" - error: "null"’,此打印貌似无法消除(我没有找到方法解决,不过真机时不会出现次打印)

到此OK.

添加友情链接,关于iOS9适配问题

/**************************************************************************/
苹果将在16年底结束缓冲期,所有应用强制必须启用APP Transport Security(ATS) 安全功能,他会屏蔽http,所以必须要改为使用HTTPS请求