Я никогда не делал то, что вы пытаетесь сделать раньше, но я думаю, что это просто вопрос определения API Reachability.
Я бы начал с некоторого кода в вашем классе AppDelegate:
// ivars
Reachability *wifiReach;
Reachability *hostReach;
- (void) reachabilityChanged: (NSNotification *)note {
Reachability *curReach = (Reachability *)[note object];
if ([curReach currentReachabilityStatus] == NotReachable) {
// do something
}
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachabilityChanged:) name: kReachabilityChangedNotification object: nil];
hostReach = [[Reachability reachabilityWithHostName: @"www.apple.com"] retain];
[hostReach startNotifier];
wifiReach = [[Reachability reachabilityForLocalWiFi] retain];
[wifiReach startNotifier];
// controller setup
viewController = [[CFSplashViewController alloc] init];
[window addSubview:viewController.view];
[window makeKeyAndVisible];
return YES;
}
Это действительно простой кусок кода.То, что вы могли бы здесь сделать, - это прослушивать изменения в состоянии доступности, а затем настроить приложение для соответствующей реакции.Вам не обязательно делать это в вашем классе AppDelegate.Все зависит от того, чего вы хотите достичь.