以编程方式清除所有应用程序数据(特别是NSUserDefaults)

时间:2015-03-15 13:26:02

标签: xcode macos cocoa nsuserdefaults

我有一两个应用程序,我想要一个"重置所有设置"按钮。

我注意到Yosemite左右,默认情况下OS X以某种奇怪的方式缓存,并且执行默认删除com.mycompany.myapp的终端根本不能正常工作。我通常还需要发出defaults write com.mycompany.app dummy dummy

我怀疑这主要与SandBoxing有关......

我希望可靠地实现重置默认值,以及清理我的沙箱和缓存目录。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

如果您是在要重置其设置的同一应用中执行此操作,请尝试:

[[NSUserDefaults standardUserDefaults] removePersistentDomainForName:[[NSBundle mainBundle] bundleIdentifier]];