У меня есть Возможность выполнения, как это предлагается в этом thread.iOS: Достижимость - startNotifier выходит из строя после возврата в приложение
Я использую open source Reachability. Однако я не использую блоки, но уведомления, поэтому этот процесс очень похож на код Apple Reachability.
При первом запуске приложения я запускаю это, и он отлично работает.
Reachability *reachability = [reach hostReachability];
[reachability startNotifier];
reachabilityChanged: событие стрельбы:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(reachability_Changed:) name:kReachabilityChangedNotification object:nil];
Однако, как только я нажимаю кнопку домой и вернуться в приложение, то startNotifier
возвращается Внутренне NO вместо Да.
// Set it as our reachability queue, which will retain the queue
if(!SCNetworkReachabilitySetDispatchQueue(self.reachabilityRef, self.reachabilitySerialQueue))
{
#ifdef DEBUG
NSLog(@"SCNetworkReachabilitySetDispatchQueue() failed: %s", SCErrorString(SCError()));
#endif
...
return NO;
и, следовательно, вышеперечисленное событие никогда не срабатывает.
Если я использую это неправильно, а startNotifier
следует вызывать только один раз в init
, когда достижимость создается и никогда не повторится?
self.hostReachability = [Reachability reachabilityWithHostname:_HOST];