Доступность приложения для iPhone с ложным срабатыванием - пройдет ли он через яблоко? - PullRequest
2 голосов
/ 21 июня 2010

Я использую этот код ...

Reachability *r = [Reachability reachabilityWithHostName:@"www.maxqdata.com"];

NetworkStatus internetStatus = [r currentReachabilityStatus];

if ((internetStatus != ReachableViaWiFi) && (internetStatus != ReachableViaWWAN))
{
UIAlertView *myAlert = [[UIAlertView alloc] initWithTitle:@"No Internet Connection" message:@"You require an internet connection via WiFi or cellular network for location finding to work." delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil];
[myAlert show];
[myAlert release];
} 

из этой темы

http://www.iphonedevsdk.com/forum/iphone-sdk-development/19546-no-wifi-connection-best-practice-2.html#post118631

для проверки интернет-соединения. Хотя в принципе это работает, я получаю ложное срабатывание в ситуации, когда сотовая сеть доступна, но не может быть активирована, есть ли у кого-нибудь идеи о том, как обнаружить этот сценарий?

В качестве альтернативы это может происходить так редко, что я всегда могу просто проигнорировать его и выдать ошибку, когда метод NSURLConnection не может подключиться - я беспокоюсь, что он может не пройти процесс проверки, есть ли у кого-нибудь опыт это?

Спасибо

1 Ответ

0 голосов
/ 21 июня 2010

Единственный код «достижимости», который я включил в некоторые из моих приложений, - это отображать сообщение об ошибке, если время соединения истекло - если вы обрабатываете прерывистое соединение или нет соединения, то изящно оно пройдет проверку. Сбой или зависание в ожидании ответа навсегда приведет вас к отказу. Как правило, я бы сказал, что все, что пользователь сочтет приемлемым, я обнаружил, что Apple тоже делает *.

* (** ваш пробег может отличаться)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...