OS X:NSUserDefaults未保存

Bar*_*cki 16 macos cocoa nsuserdefaults

我有一个OSX的沙盒应用程序,我保存了一些数据NSUserDefaults,一切都很好,直到我从~Library/Preferences /目录中删除了plist文件.

我认为应用程序应该重新开始,但事实并非如此.当我调试时,我看到了

[[NSUserDefaults standardUserDefaults] synchronize] 方法返回 YES

并且数据保存在类中,但是当我重新启动应用程序时,用户默认值为空.

即使我将这些plist文件从备份复制到Preferences目录,该应用程序也看不到它.

当然plist应该保存在Containers /我的应用程序包id/Data/Library/Preferences中,当我将plist文件从备份复制到该目录时,应用程序可以看到它,但是当我删除时为什么不重新创建该文件它?

有人知道为什么吗?

Jay*_*Jay 2

检查这个问题 - 可能与在沙箱中运行时的缓存首选项位置有关:

Mac 沙箱已创建,但没有 NSUserDefaults plist