[英]iPhone 7 NSUserDefaults turning into nil
I have an iPhone 7 , and I also use it for development. 我有一部iPhone 7,我也用它来开发。 I noticed that in my app , I was storing a session token for auto login purposes into the NSUserDefaults.
我注意到在我的应用程序中,我正在为NSUserDefaults存储用于自动登录目的的会话令牌。 But sometimes , without removing it the session token was nil and the auto login is not working.
但有时,如果不删除它,会话令牌为零,自动登录无效。 This also happens to other apps , where some times it asks me to login again , although I already have.
这也适用于其他应用程序,有时它会要求我再次登录,尽管我已经有了。 I am guessing that somehow to NSUserDefaults that most of the apps use are being erased somehow.
我猜测大多数应用程序使用的NSUserDefaults以某种方式被删除。 Anyone having a similar issue ?
有类似问题的人吗?
class func setSessionToken(_ token: String){
let defaults = UserDefaults.standard
defaults.setValue(token, forKey: sessionTokenKey)
defaults.synchronize()
}
class func getSessionToken()->String?{
let defaults = UserDefaults.standard
return defaults.string(forKey: sessionTokenKey)
}
This issue normally occurs when Running an iOS8 or 9 simulator followed by an iOS10 simulator and NSUserDefaults stop working in the simulator. 当运行iOS8或9模拟器,然后是iOS10模拟器并且NSUserDefaults在模拟器中停止工作时,通常会发生此问题。
But, in your case if it is not working in iPhone also . 但是,在你的情况下,如果它也不适用于iPhone。 You can try it with latest version of Xcode8 .
您可以使用最新版本的Xcode8进行尝试。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.