【发布时间】:2009-01-03 22:38:29
【问题描述】:
我注意到在 OSX 上,安装通常是一个拖放一个文件的交易。我假设该文件是所有应用程序必要位的存档,并且应用程序直接从它运行。应用程序将配置数据存储在哪里,尤其是当有多个用户时,每个用户的设置?在 Windows 上,此类内容可能会保存在 HKLU 或 HKLM 下的注册表中,或者保存在用户或所有用户的 Application Data 文件夹中。
【问题讨论】:
标签: macos installation
我注意到在 OSX 上,安装通常是一个拖放一个文件的交易。我假设该文件是所有应用程序必要位的存档,并且应用程序直接从它运行。应用程序将配置数据存储在哪里,尤其是当有多个用户时,每个用户的设置?在 Windows 上,此类内容可能会保存在 HKLU 或 HKLM 下的注册表中,或者保存在用户或所有用户的 Application Data 文件夹中。
【问题讨论】:
标签: macos installation
在/Users/username/Library/Preferences。
您还看到一些东西被放置在/Users/username/Library/Application Support。
这两个文件夹在/Users 之外都有对应的全局位置,即在/Library 下。然而,出于显而易见的原因,这些似乎很少被应用程序使用。
OSX 原生应用程序的首选项格式通常是 .plist(属性列表)文件,其名称以反向域名语法给出。有一个名为 Property List Editor 的独立应用程序,它允许您查看和编辑此类文件。 (我认为它是 XCode/developer-tools 下载的一部分。)当然,没有什么可以阻止您使用自己的偏好存储系统,并且大多数跨平台的应用程序自然会倾向于这样做,但是偏好应该仍然放在/Users/username/Library/Preferences目录下。
编辑:如果您正在为 Mac 编写软件并且您正在使用 Cocoa 框架,那么 Apple 为处理存储和检索首选项设置的 Cocoa API 部分提供了此文档:User Defaults Programming
【讨论】:
还有
/Users/username/Library/Containers 和 /Users/username/Library/Group Containers
是寻找的地方。
【讨论】:
com.docker.docker)。您可以通过右键单击应用程序文件夹中的应用程序图标 -> “显示包内容” -> 并查找捆绑标识符所在的 Info.plist 文件来找到此标识符。
作为harms 回答的附录,我要指出,与Windows 注册表一样,OS X 首选项在删除应用程序时不会被故意删除,但与Windows 注册表不同,当您升级时,首选项可以从一台机器迁移到另一台机器您的 Mac 并使用“用户迁移”工具。
这可能会导致令人惊讶的结果,例如安装“NeatoApp 2008”并发现它知道您为“NeatoApp 2003”选择的所有设置,即使 2003 版本从未安装在您当前的计算机上。
【讨论】: