我正在更新我的应用以适应Apple的新ATS.如果没有对Plist-Info进行任何更改,以下代码会在vanilla`iOS sendSynchronousRequest()9模拟器中引发错误.
NSURL *url =[NSURL URLWithString:@"https://Google.com"];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]init];
[request setHTTPMethod:@"GET"];
[request setURL:url];
NSURLResponse *urlResponse = nil;
NSError *error = nil;
NSData *reponse = [NSURLConnection sendSynchronousRequest:request
returningResponse:&urlResponse
error:&error];
Run Code Online (Sandbox Code Playgroud)
错误:
NSURLSession/NSURLConnection HTTP加载失败(kCFStreamErrorDomainSSL,-9802)
有关这个问题可能背后的想法吗?
Ps:据我所知,NSURLConnection已被弃用.但是如果我加入AllowArbitraryLoads,这个调用就可以找到Plist.
我安装了MacOS 10.11 Beta 3(El Capiton),并希望在IPv6中仅测试我的iPhone应用程序NAT64 + DNS64配置.但我无法在"网络共享"对话框中找到"创建NAT64网络"选项.
有人遇到过这个问题吗?有没有办法实现这个?
感谢您的帮助.
我在网上广泛搜索,但未能找到有关提交受ATS影响的应用程序的以下问题的任何具体/官方信息.
问: ATS仅适用于iOS 9以上版本.当设备升级到iOS9时,旧应用程序(针对iOS 8.x及更低版本构建)会发生什么.它们是否会默认禁用ATS,或者如果它们不符合ATS,它们是否会停止运行? ANS:为较低SDK构建的应用程序默认情况下将选择退出ATS.能够使用iOS 9 beta 5设备验证这一点.(app-dev-forum link)
设置全局ATS禁用标志(allowarbitraryloads)的应用程序是否会被允许进入应用程序商店?
很高兴,如果你能回答上述任何一个.我将在这篇文章中编译答案,以便以后参考.如果你为ref添加任何官方链接会很棒.任何帮助都非常感谢.
如果用户在iOS 8.4上运行我的应用程序,那么当用户升级到iOS 9时,默认情况下会强制执行或关闭ATS吗?我找不到有关此行为的任何官方文档.任何引用都会有帮助.
谢谢!