我正在尝试修复CFNetwork SSLHandshake失败(-9806)警告。 我的应用程序运行良好,但当我在设备中通过Xcode运行应用程序时,应用程序崩溃。 我在.plist中添加了NSAppTransportSecurity,
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>yourserver.com</key>
<dict>
<!--Include to allow subdomains-->
<key>NSIncludesSubdomains</key>
<true/>
<!--Include to allow insecure HTTP requests-->
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<true/>
<!--Include to specify minimum TLS version-->
<key>NSExceptionMinimumTLSVersion</key>
<string>TLSv1.1</string>
</dict>
</dict>
</dict>
还测试了不同的3g / wifi。
需要帮助。提前谢谢。
答案 0 :(得分:1)
完成此link
还可以尝试使用不同版本的TLS,如下所示。
<key>NSTemporaryExceptionMinimumTLSVersion</key> <string>TLSv1.1</string>
同时通过添加到您应用的Info.plist中来检查:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>YOUR_HOST.COM</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
<true/>
<key>NSTemporaryExceptionMinimumTLSVersion</key>
<string>1.0</string>
<key>NSTemporaryExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
</dict>
</dict>
答案 1 :(得分:0)
我遇到了同样的问题。阅读完这篇文章CFNetwork SSLHandshake failed iOS 9之后,我把它放在Info.plist上,现在可以工作了:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>