Swift 3 如何使 OS X 应用程序开机自启动

7

我刚刚用Swift 3为OS X编写了我的第一个应用程序。如何配置此应用程序在用户登录时启动?


不,这不是我的帖子。 - Musyanon
1
@Musyanon同意那不是你的帖子,但它似乎回答了你的问题。 - Richard
@Musyanon 实际上,那里的解决方案没有显示任何代码;它只是链接。 - Richard
1
你可以使用这个库 https://github.com/sindresorhus/LaunchAtLogin - Ahmadreza
显示剩余3条评论
1个回答

3

这对我起作用了,但有些限制。首先,应用程序必须驻留在应用程序文件夹中。其次,我看到建议在目标应用程序包中包含一个“助手”应用程序来执行实际的启动...但我必须承认我不知道为什么需要这样做。

if SMLoginItemSetEnabled(appBundleIdentifier as CFString, true) {
    log.info("Successfully added login item.")
} else {
    log.warning("Failed to add login item.")
}

最后一个参数告诉系统是添加(true)还是移除(false)应用程序的启动项。请参阅Google SMLoginItemSetEnabled以获取更多详细信息。否则,我将自己解决这个问题,欢迎有人对此进行扩展。


应用程序无法以这种方式使用自己的捆绑标识符,因此许多人选择使用第二个目标。参考:https://theswiftdev.com/2017/10/27/how-to-launch-a-macos-app-at-login/ - Alec O

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接