macOS:在用户退出主应用程序后保持 XPC 服务(捆绑)运行
Posted
技术标签:
【中文标题】macOS:在用户退出主应用程序后保持 XPC 服务(捆绑)运行【英文标题】:macOS: Keep XPC Service (bundled) running after user quits main app 【发布时间】:2019-05-29 19:30:19 【问题描述】:我的 macOS 应用程序中捆绑的 XPC 服务需要对父应用程序转储的文件进行一些后期处理工作,这很可能无法在应用程序的使用时间内完成。那么,有没有办法让 XPC 服务在用户退出主应用后也能继续运行呢?
【问题讨论】:
【参考方案1】:您可以将其安装为启动守护程序(只要计算机打开,就在根上下文中运行)或启动代理(只要用户登录,就在用户上下文中运行)。
【讨论】:
【参考方案2】:听起来您应该使用 launchd 的 WatchPaths
或 QueueDirectories
功能。
只要被监视的任何路径发生变化,WatchPaths 就会启动作业
或
只要给定目录不为空,QueueDirectories 就会启动您的作业,并且只要这些目录不为空,它就会让您的作业继续运行
Apple's launchd documentation 涵盖了这两者。
【讨论】:
以上是关于macOS:在用户退出主应用程序后保持 XPC 服务(捆绑)运行的主要内容,如果未能解决你的问题,请参考以下文章