в моем приложении я проверяю текущее состояние подключения к моему веб-сайту и состояние сети при запуске приложения:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(reachabilityChanged:)
name:kReachabilityChangedNotification object:nil];
internetReach = [[Reachability reachabilityForInternetConnection] retain];
[internetReach startNotifier];
hostReach = [[Reachability reachabilityWithHostName:@"www.google.de"]
retain];
[hostReach startNotifier];
[self updateInterfaceWithReachability:internetReach];
[self updateInterfaceWithReachability:hostReach];
//....
-(void)reachabilityChanged: (NSNotification* )note{
Reachability* curReach = [note object];
NSParameterAssert([curReach isKindOfClass: [Reachability class]]);
[self updateInterfaceWithReachability: curReach];
}
В моем updateInterfaceWithReachability
я хочу показать предупреждение, если подключение к веб-сайту не можетбыть установленным.
Моя проблема в том, что предупреждение отображается дважды, поэтому появляется первое сообщение, а когда я отклоняю его, отображаются секунды:
if(curReach == hostReach){
NetworkStatus netStatus = [curReach currentReachabilityStatus];
if(netStatus != NotReachable){
statusLabel.text = @"connected";
[self setStatusColorGreen];
}else{
if(![internetReach connectionRequired]){
statusLabel.text = @"not connected";
compose.enabled = NO;
[self doSMSFAlert];
[self setStatusColorRed];
}
}
}
Есть идеи?1011 * РЕДАКТИРОВАТЬ: я заметил, что теперь у меня есть рабочий хост, предупреждение тоже отображается, но не должно.Однако статус «подключен»