不推荐使用NSURLConnection initWithRequest

时间:2015-09-18 08:17:43

标签: ios gmail-api xcode7

我正在iOS中采用 Gmail API ,我收到警告:

  

不推荐使用initWithRequest

在以下行中:

connection_ = [[connectionClass alloc] initWithRequest:request_ delegate:self startImmediately:NO];

该行位于API库的源文件GTMHTTPFetcher.m中。

弃用-initWithRequest:方法的替代品是什么?

4 个答案:

答案 0 :(得分:32)

在iOS 9中不推荐使用

NSURLConnection。您可以使用自iOS 7以来存在的NSURLSession

NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
        completionHandler:^(NSData *data, NSURLResponse *response, NSError *error)
        {
            // do something with the data 
        }];
[dataTask resume];

答案 1 :(得分:6)

如果你不关心completeHandler:这里有一个一个班轮

[[[NSURLSession sharedSession] dataTaskWithRequest:request] resume];

答案 2 :(得分:3)

似乎整个NSURLConnection API已在iOS 9中弃用。现有应用程序将继续有效,但新版本(与iOS SDK链接)必须使用较新的NSURLSession API。

Ray Wenderlich有一本很好的教程here。 当然,还要检查official documentation

答案 3 :(得分:0)

使用<{>> NSURLConnection / NSURLSession 的STHTTPRequest

对于 NSURLSession ,请使用STHTTPRequest2

STHTTPRequest 是最好的库,因为它只有2个文件且易于使用。