我正在使用此库在设备上的连接状态发生变化时收到通知。我不明白为什么这不起作用!我正在做我正在github文档中阅读的内容!
当应用程序启动时,通知会被发布,但是当我打开设置时,打开/关闭飞行模式并返回应用程序(不关闭它),通知不会被调用。
我还订阅了获取UIApplicationWillEnterForegroundNotification通知......这两种方法都在应用程序中存在...我错过了什么?!
这是在我的viewDidLoad:
self.reach = [Reachability reachabilityWithHostname:kServerURL];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(reachabilityChangedInApp:)
name:kReachabilityChangedNotification
object:nil];
[self.reach startNotifier];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(initializeDateRelatedStuff:)
name:UIApplicationWillEnterForegroundNotification
object:nil];
这是我的dealloc
- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
谢谢!
答案 0 :(得分:2)
问题是您的应用程序很可能不是后台应用程序,因此一旦按下主页按钮激活飞行模式就会暂停。由于您的应用在可访问性更改时未运行,因此不会收到任何通知。但是,当您的应用处于前台时,网络可访问性会发生变化,您将收到通知。
因此,您可能希望在应用程序进入前台时检查可访问性以及已实施的内容。