![](/img/trans.png)
[英]NSURLConnection (initWithRequest vs sendAsyncRequest)
[英]NSURLConnection initWithRequest is deprecated
我在 iOS 中采用Gmail API ,但收到警告:
initWithRequest 已弃用
在以下行中:
connection_ = [[connectionClass alloc] initWithRequest:request_ delegate:self startImmediately:NO];
该行位于 API 库的源文件 GTMHTTPFetcher.m 中。
什么是已弃用的-initWithRequest:
方法的替代品?
NSURLConnection
在 iOS 9 中已被弃用。您可以使用NSURLSession
代替,它自 iOS 7 以来就存在。
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error)
{
// do something with the data
}];
[dataTask resume];
如果您不关心 completionHandler :这里是one liner 。
[[[NSURLSession sharedSession] dataTaskWithRequest:request] resume];
使用STHTTPRequest ,它使用NSURLConnection / NSURLSession 。
对于NSURLSession使用STHTTPRequest2 。
STHTTPRequest是最好的库,因为它只有2个文件且易于使用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.