в моем приложении в appDelegate. Я вставил код достижимости, как Apple, скажем:
-(BOOL)checkInternet
{
Reachability *r = [Reachability reachabilityWithHostName:@"google.com"];
NetworkStatus internetStatus = [r currentReachabilityStatus];
BOOL internet;
if ((internetStatus != ReachableViaWiFi) && (internetStatus != ReachableViaWWAN)) {
internet = NO;
} else {
internet = YES;
}
return internet;
}
и в моем viewcontroller.m в методе - (void) applicationDidBecomeActive: (UIApplication *) application {
gotInternet = [self checkInternet];
if ( gotInternet == 0)
{
//No connection
} else {
//Connection ok
}
но при наличии проблем в сети 3g мое приложение примерно через 20 секунд вылетает из-за слишком большой задержки. Как я могу реализовать управляющее соединение асинхронно, чтобы никогда не использовать сторожевой таймер?
спасибо