我需要知道如何创建一个始终在后台运行的应用程序,并每10分钟收集一次位置信息。我对启动代理和守护进程了解不多。
我读过一些例子,我发现Launch agents只是一个plist文件。我们是否应该每10分钟通过启动代理启动一次应用程序?如何做到这一点?
发布于 2019-06-01 02:51:08
这个问题没有简单的答案;您确实需要阅读-或者至少熟悉一下- Daemons and Services Programming Guide,特别是“创建登录项”部分。
如果您计划创建一个沙盒(App Store)应用程序,这将在一定程度上限制您的选择,但不会显著限制(对于此类应用程序)。
您需要决定您的后台进程是否需要UI。我怀疑不是,所以我将引导您到XPC服务或用户代理路由。这些进程将注册到launchd
,launchd
有大约十亿个不同的选项来决定如何以及何时启动您的进程,其中之一是定期启动。有关这些内容的更多信息,请参阅man launchd.plist
,特别是StartInterval
和StartCalendarInterval
。
有了这些知识,我建议做一些互联网和开源搜索,寻找例子。我相信你会找到很多的。
https://stackoverflow.com/questions/56388264
复制相似问题