当应用退出时删除NSUserDefault键值



我在我的NSUserDefault中保存了一个NSString,键为@"userKey"
当应用程序完全关闭时,我希望能够将此值重置为@"",而不是当它进入后台时。

I have try:

[[NSUserDefaults standardUserDefaults] setObject:@"" forKey:@"opponentFile"];

在我的appdelegate的-applicationWillTerminate:中,但是没有任何反应。

当我完全关闭应用程序后打开它时,默认值仍然存在。
我该怎么做呢?

NSUserDefaults的永久更改是定时的。
您可以通过在-applicationWillTerminate:中添加以下内容来强制执行此操作。

[[NSUserDefaults standardUserDefaults] synchronize];

不要太频繁地强制这样做,因为这会降低应用程序的性能。


还是……你可以直接输入

[[NSUserDefaults standardUserDefaults] setObject:@"" forKey:@"opponentFile"];

代替-didFinishLaunchingWithOptions:

尝试:

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application;

最新更新