标签: macos service bundle launchd launchctl
应用程序需要运行具有root权限的二进制(服务),并避免在每次启动时询问权限,但仅在安装时。
为此,首先启动应用程序将在launchd上设置服务。
问题是如何在删除应用包时删除该服务?
如果检测到应用已被删除,那么launchd服务是否可以自行删除?
编辑:
即使服务正在运行且其二进制文件位于捆绑包中,也可以删除应用程序包。到目前为止,实现是服务将定期检查其自身路径的存在,并且如果它不再是valide,它将自己从launchctl中删除