objective-c – MAC OS X 10.8上的所有用户应用程序首选项

在MAC OS 10.8.x上,应用程序是否可以存储全局首选项(即适用于所有用户)而无需使用辅助工具(如SMJobBless)?

我试图写入应用程序包,试图找到所有用户的位置R / W,两次尝试没有任何运气.

我还能尝试什么?

最佳答案 在这里留下这个答案,但它可能不适合你,因为你可能需要特权访问来进行CFPreferencesSetValue()调用.我做了其中一件已经好几年了.

如果您不需要使用沙盒,那么您需要的工具是较低级别的首选项界面CFPreferences.具体来说,您可以使用CFPreferencesSetValue()和CFPreferencesCopyValue()以及kCFPreferencesAnyUser.

这可能适用于沙盒应用程序,但我还没有尝试过.根据Preferences and Settings Programming Guide关于“使用Core Foundation管理首选项”:

Writing outside the app domain is not possible for apps installed in a sandbox.

这暗示它是合法的,因为这是在app域内.但沙盒应用程序很可能会在每个用户的沙箱中编写该应用程序域首选项,因此它实际上无法正常工作.你必须尝试一下.

点赞