升级Xcode 7.0 以后,以前可以运行的程序,发现网络访问失败。
输出错误信息:
The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.
iOS9引入了新特性App Transport Security (ATS)。详情:App Transport Security (ATS)
问题分析后,总结如下:
- 新特性要求App内访问的网络必须使用HTTPS协议。
- 现在公司的项目使用的是HTTP协议,使用私有加密方式保证数据安全。现在也不能马上改成HTTPS协议传输。
解决办法:
- 在工程中找到info.plist 文件,注意不是**Tests文件中得plist,操作如下图:
- 添加代码
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
本人习惯添加位置如下图所示:
注意⚠️,单元测试下面也有一个Info.plist,修改那个文件是没有作用的
运行一下吧* Command + R 快捷键,完美运行!加油哦,小伙伴们