今天做音乐播放器,传入一个url,并把它转成NSData ,发现网络访问失败。
但是现在公司的项目使用的是

输出错误信息
The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.
新特性要求App内访问的网络必须使用HTTPS协议。但是现在公司的项目使用的是
HTTP协议,使用私有加密方式保证数据安全。现在也不能马上改成HTTPS协议传输。因此需要改动
info.plist文件,允许项目可以用http明文传输。
最终找到以下解决办法:
-
在Info.plist中添加
NSAppTransportSecurity类型Dictionary。 -
在
NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES
上面介绍的方法虽然解决了网络访问的问题,但是苹果提供的安全保障也被关闭了。
不过,按照国内的现状,关闭这个限制也许是更实际的做法。
至于原因就太多了,第三方SDK(几乎都是访问HTTP),合作伙伴接入(不能要求它们一定要支持HTTPS)。
如果你的App没有受到这些原因的限制,还是更建议你增加HTTPS支持,而不是关闭限制。
请大家根据项目的实际情况作调整。
本文介绍了如何解决iOS应用中音乐播放器因App Transport Security政策无法通过HTTP加载资源的问题,并提供了解决方案。
130

被折叠的 条评论
为什么被折叠?



