很短的时间(我(猜测*自Mac OS X 10.10.2起))我能够NSUserDefaults
通过via清除我的设置
defaults delete ~/Library/Preference/<my app>.plist
但是突然之间它不起作用,而且我的设置似乎超级持久。我还手动清除了“保存的设置”下的所有内容,并为“容器”发出了上述命令(尽管沙箱已关闭以进行测试)。
还有什么可以保留我的设置?我想下次重新启动可能会清除它,但我想避免将来重新启动。
PS设置甚至在重启后仍然存在:-(
首先,在使用时defaults
,必须.plist
与文件名defaults
分开-它始终添加该文件名,因此,如果您还提供文件名,则将尝试删除“ <我的应用程序> .plist.plist”。
其次,我认为,当您指定首选项文件的完整路径时,您会绕过cfprefsd
,它(除其他事项外)会缓存最近使用的首选项。您应该只使用defaults delete <my app>
,或者killall cfprefsd
在删除首选项之前(但在退出应用程序之后)运行。
请注意,如果应用被沙盒化,defaults
则是删除首选项的错误方法-只是kill cfprefsd
,然后用于rm
删除应用的整个沙盒容器(rm ~/Library/Containers/<my app>
)或仅删除其首选项文件(rm ~/Library/Containers/<my app>/Data/Library/Preferences/<my app>.plist
)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句