Сетевое соединение потеряно при переключении с wifi на 3g
Я столкнулся со странной проблемой, оба, Reachability и NSURLConnection, показывая ошибку (Нет подключения к Интернету / Сетевое подключение потеряно) после переключения с Wi-Fi на 3g. Хотя все приложения работают нормально после перехода на 3g. Я дважды проверяю, включены ли мобильные данные для приложения и для устройства. Переустановка приложений работает нормально, помогите пожалуйста. Вот некоторый код достижимости:
-(BOOL)toCheckNetworkStatus
{
internetReachable = [Reachability reachabilityForInternetConnection];
[internetReachable startNotifier];
NetworkStatus internetStatus = [internetReachable currentReachabilityStatus];
if(internetStatus == NotReachable ){
[self displayToastWithMessage:@"Connection lost!" AndSubtitle:@"Please check your network connection." delay:3.2];
return NO;
}
else{
return YES;
}
}
Код для NSURLConnection:
NSError *error;
NSData *postData = [NSJSONSerialization dataWithJSONObject:dictionary
options:0
error:&error];
if (error)
NSLog(@"Failure to serialize JSON object %@", error);
NSURL *url = [NSURL URLWithString:palURL];
NSMutableURLRequest* request = [NSMutableURLRequest requestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:TIMEOUTINTERVAL];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setHTTPBody:postData];
[NSURLConnection sendAsynchronousRequest:request
queue:[NSOperationQueue mainQueue]
completionHandler:
^(NSURLResponse *response, NSData *data, NSError *connectionError)
{
if (data)
{
NSMutableDictionary *responseDict = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
NSLog(@"UPLOADED LOCATION RESPONSE = %@",responseDict);
}
else
{
NSLog(@"connectionError===%@",connectionError);
}
}];