AFNetworking-可达性始终返回-1
我使用最新的AFNetworking来源,可访问性对我而言不起作用,它从不触发可访问性块,并且 [httpClient networkReachabilityStatus]
始终返回-1。 .pch
I use latest AFNetworking sources and the reachability doesn't work for me, it never fires reachability block and the [httpClient networkReachabilityStatus]
always returns -1. SystemConfiguration/SystemConfiguration.h is included in .pch
startMonitoringNetworkReachability已执行(在AFHTTPClient中)。
startMonitoringNetworkReachability is executed (in AFHTTPClient).
iPhone 4已包含SystemConfiguration / SystemConfiguration.h。 ,iOS 6.1
iPhone 4, iOS 6.1
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
即将被释放。
Assuming you're using ARC the block is probably never being fired because your httpClient
is being released as soon as this method is finished.
要解决此问题,您需要创建 httpClient
作为 strong
@property
:
To fix this you would need to create your httpClient
as a strong
@property
such as:
@property (nonatomic, strong) AFHTTPClient *httpClient;