我通过CocoaPods安装了AFNetworking:
pod "AFNetworking", '~> 2.0.3'
因此,该方法是从标准GET请求中调用的:
- (NSURLSessionDataTask *)GET:(NSString *)URLString
parameters:(NSDictionary *)parameters
success:(void (^)(NSURLSessionDataTask *task, id responseObject))success
failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure
在iOS 6- (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request;
上返回的呼叫nil
。
因为AFNetworking使用iOS 7.0中引入的NSURLSessionTask
&NSURLSession
新要求:iOS 6,Mac OS X 10.8和Xcode 5
AFNetworking 2.0正式支持iOS 6 +,Mac OS X 10.8+和Xcode 5。
为什么调用仅在iOS7中出现的方法?
我找到了解决方案:
我的API客户端继承自AFHTTPSessionManager
(例如在afnetwoking网站示例中)。
但是,如果您使用的是iOS 6,则只需继承AFHTTPRequestOperationManager
AFNetworking 1.x版本中的继承即可。
更换:
@interface APIClient : AFHTTPSessionManager
至:
@interface APIClient : AFHTTPRequestOperationManager
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句