objective-c - 根据 OSX 中的用户偏好更改提供的服务?

标签 objective-c cocoa macos service

我希望能够根据当前用户的偏好更改我的应用程序提供的 OSX 服务(例如添加更多、更改名称等)。这基本上意味着修改 Info.plist (NSService 键),但我认为当应用程序在运行时修改自己的 Info.plist 时,这不是一个好的做法,对吧? (至少基于这里的一些搜索)。还有其他选择如何获得此功能吗?

我想修改 Info.plist 的应该始终是外部实体?到目前为止,我只能考虑提供一个系统首选项包,它将在实际应用程序中进行修改?你有什么想法吗?

谢谢

最佳答案

一种方法是在 ~/Library/Services 中安装提供服务的服务,并从主应用程序编辑该应用程序的 Info.plist。

当然,这应该是一个明确的操作,因此用户(希望)知道在删除您的应用程序时删除该服务。您应该在产品的支持网页上记录该过程,以防万一他们不这样做。

关于objective-c - 根据 OSX 中的用户偏好更改提供的服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1804922/

相关文章:

swift - 如何快速捕获 NSControl 上的一些事件

在 OSX 上运行 ./gradlew 时 JAVA_HOME 设置为无效目录

macos - 如何在 Interface Builder 中对 OS X 切换按钮进行分组

ios - Google map iOS SDK 中的 GMSAutocompleteFilter 中缺少 "Country"属性

iOS:如何在排序的 NSMutableArray 中找到插入位置

objective-c - Objective C 的动态 getter 和 setter

objective-c - 如何在 Mac OS X Lion 上双屏显示

cocoa - NSOutlineView 在展开项目时出现断言错误

linux - 突然我收到错误 "cannot read termcap database"

iphone - 如何在我的应用程序中纠正与 iAd 相关的崩溃