0%

ATS

前几日,同事 CM 合并代码后,运行工程,网络报错 ATS

1
2
code = -1022
The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.

可是项目中info.plist已经添加了 NSAllowsArbitraryLoads ,网上查找了一大圈还是没有解决问题, CM 尝试删除了 info.plist 中另一个 key NSAllowsArbitraryLoadsInWebContent 居然神奇的好用了。

赶紧查文档,文档上就有说明

NSAllowsArbitraryLoads
NSAllowsArbitraryLoadsInWebContent

文档说的很清楚了,在 iOS 10 和 macOS 10.12 以后,只要写了 NSAllowsArbitraryLoadsForMedia NSAllowsArbitraryLoadsInWebContent NSAllowsLocalNetworking 这个三个中任何一个 NSAllowsArbitraryLoads 默认就为 NO 了,不管你设置的啥。但是还是一脸懵逼…

参考