Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 如何让我的菜单栏应用程序在登录时启动?_Swift_Macos_Launchd - Fatal编程技术网

Swift 如何让我的菜单栏应用程序在登录时启动?

Swift 如何让我的菜单栏应用程序在登录时启动?,swift,macos,launchd,Swift,Macos,Launchd,我制作了一个应用程序,在菜单栏上显示你的IP地址。它没有停靠图标,只在菜单栏中运行 我希望此应用程序在登录时启动。我制作了一个脚本,它使用osascript将name.app添加到登录项中,但是我不想部署这个应用,这不是一个合适的解决方案 我已经尝试过按照以下指南创建launchd launch agent/dameon,但是没有一个指南告诉我如何在Xcode中创建我的应用程序来创建plist并将其复制到~/Library/LaunchAgent中。我可以手动创建它,将其放置到位,然后它就可以工

我制作了一个应用程序,在菜单栏上显示你的IP地址。它没有停靠图标,只在菜单栏中运行

我希望此应用程序在登录时启动。我制作了一个脚本,它使用osascript将name.app添加到登录项中,但是我不想部署这个应用,这不是一个合适的解决方案


我已经尝试过按照以下指南创建launchd launch agent/dameon,但是没有一个指南告诉我如何在Xcode中创建我的应用程序来创建plist并将其复制到~/Library/LaunchAgent中。我可以手动创建它,将其放置到位,然后它就可以工作了,但是我如何让用户(他只是将我的应用程序从.dmg拖到应用程序文件夹中)也复制一个启动代理呢?

现在最好的方法可能是将LoginItem捆绑到应用程序捆绑包的内容目录中。然后可以使用来启用它


您的意思是捆绑我制作的登录项plist,以便将com.me.app.plist(即启动代理plist)包含在应用捆绑内容目录中?它将是一个完整的应用捆绑;您可以在此处查看更多信息: