Objective c 使用SMLoginItemSetEnabled时,应用程序不会显示在“下”;登录项目“;

Objective c 使用SMLoginItemSetEnabled时,应用程序不会显示在“下”;登录项目“;,objective-c,xcode,macos,Objective C,Xcode,Macos,我正在使用在登录时启动应用程序。一切正常,只是应用程序没有显示在“用户首选项”窗口的“登录项”下。我在OSX Lion中尝试过这个 这是预期的行为吗 有没有办法手动停止应用程序在登录时启动?我在/Library/LaunchDaemons或/Library/LaunchAgents中找不到任何内容 这是预期的行为。 说: 使用服务管理框架安装的登录项在系统首选项中不可见,只能由安装它们的应用程序删除 是的,只需在launchd的overrides.plist中将包标识符的Disabled更改为

我正在使用在登录时启动应用程序。一切正常,只是应用程序没有显示在“用户首选项”窗口的“登录项”下。我在OSX Lion中尝试过这个

  • 这是预期的行为吗
  • 有没有办法手动停止应用程序在登录时启动?我在
    /Library/LaunchDaemons
    /Library/LaunchAgents
    中找不到任何内容
  • 这是预期的行为。 说:

    使用服务管理框架安装的登录项在系统首选项中不可见,只能由安装它们的应用程序删除


    是的,只需在launchd的overrides.plist中将包标识符的Disabled更改为true。 我给你写了一个命令来做这件事:

    /usr/libexec/PlistBuddy -c 'Set :com.yourcompany.helper-CFBundleIdentifier-here:Disabled true' /var/db/launchd.db/com.apple.launchd.peruser.$UID/overrides.plist
    
    • 注意:用BundleIdentifier替换com.yourcompany.helper-CFBundleIdentifier-here

    提醒:看起来10.10现在使用
    /var/db/com.apple.xpc.launchd/disabled.$UID.plist
    跟踪启用/禁用状态。