在OS X App Sandbox中更新文件的最佳实践

时间:2013-01-04 08:00:18

标签: objective-c cocoa sandbox appstore-sandbox

我知道将非沙盒应用程序迁移到应用程序沙箱的方法,虽然我想知道在应用程序沙箱容器中更新文件(主要是首选项列表)的最佳做法是什么?

最终,如果有一个类似于NSUserDefaults的方法可以用来更新我想要做的应用程序沙盒容器中的首选项列表。

我读过的来源:

App Sandbox Design Guide

NSUserDefaults Class Reference

App Sandboxing

1 个答案:

答案 0 :(得分:3)

如果您实际存储偏好设置,请使用NSUserDefaults。它在沙箱内部与外部一样(从API角度来看)。最好假装偏好不存储在plists中;依赖于实现细节可能会对最近的操作系统产生各种不幸的副作用,所以只需使用API​​。

如果您尝试修改任意plist而不是存储首选项,使用NSUserDefaults。使用NSPropertyListSerialization并直接读/写它们。