【发布时间】:2014-10-30 01:48:28
【问题描述】:
我开发了一个 Mac 应用程序,它可以保存和加载一种独特类型的文件。该类型在 CFBundleDocumentTypes 下的 info.plist 中正确声明,列为 LSHandlerRank: Owner 和 CFBundleTypeRole: Editor。我正在发布我的应用程序的新版本,我希望如果在他们的机器上已经有我的应用程序以前版本的用户安装了新版本但同时安装了旧版本,新版本会自动接管文件关联此类型来自旧版本的应用程序。但是默认的操作系统行为似乎是授予与文件类型关联的最早安装的应用程序作为它的永久所有者,除非用户手动更改它。我知道命令行工具duti 可以进行关联更改,并且可以编辑系统文件 com.apple.LaunchServices.plist,但这些似乎不是以编程方式进行此操作的最佳或最可靠的方法一个应用程序。是否有任何“正确”/Apple 认可的方式来做我想做的事?
【问题讨论】:
-
你最后找到解决办法了吗?我在这里遇到了完全相同的问题:/
标签: macos info.plist cfbundledocumenttypes