AFNetworking – 可恢复性总是返回-1
我使用最新的AFNetworking来源,可用性不适合我,它永远不会触发可用性块,[httpClient networkReachabilityStatus]总是返回-1。 SystemConfiguration / SystemConfiguration.h包含在.pch中
startMonitoringNetworkReachability被执行(在AFHTTPClient中)。
iPhone 4,iOS 6.1
有什么build议?
AFHTTPClient *httpClient = [AFHTTPClient clientWithBaseURL:[NSURL URLWithString:URL]]; [httpClient setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) { NSLog(@"Internet status changed"); NSLog(@"%d", status); }]; NSMutableURLRequest *request = [httpClient requestWithMethod:@"POST" path:method parameters:post]; NSLog(@"Network reach %d",[httpClient networkReachabilityStatus]); AFJSONRequestOperation *operation = [self getOperationWithMethod:method withRequest:request andCallback:callback]; [operation start];
假设你使用ARC,块可能永远不会被解雇,因为一旦这个方法完成,你的httpClient
就会被释放。
要解决这个问题,你需要创build你的httpClient
作为一个strong
的httpClient
,比如:
@property (nonatomic, strong) AFHTTPClient *httpClient;