ios观察者没有在设备上工作但在模拟器上工作

时间:2016-09-13 11:46:54

标签: ios iphone swift ios-simulator nsuserdefaults

我正在使用观察者来跟踪用户的登录状态,状态更新为nsuserdefaults;下面是代码

 if(loggedInStatusDefault != true){
    defaults.addObserver(self, forKeyPath: loginDefaultsKeys.accessTokenKey, options: NSKeyValueObservingOptions.New, context: nil)
 }

每当更新值loginDefaultsKeys.accessTokenKey时,都会调用observeValueForKeyPath函数 -

override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>) {
   DDLogVerbose("LoggedIn successfully")
   showHomeScreen()
}

在observeValueForKeyPath中,我调用的showHomeScreen()依赖于我在userdefaults中更新的accessToken。

这里的问题是,当我在模拟器上运行应用程序时,整个流程/代码正在运行,但是没有在ios设备上运行(在iphone 6s plus上运行,iphone 6运行ios 9)。

任何人都可以帮助解决这个问题的原因吗?观察者是否与设备有关?

0 个答案:

没有答案