当我的macOS应用程序处于任何状态时,我试图调用函数,包括终止。以下是我想要完成的事情:
安排一个函数(很像DispatchQueue.main.asyncAfter()
)在给定时间每天运行(让我们说早上9点)。我想在我的应用程序中添加一个功能,允许用户选择一天中的某个时间,并在每天的那个时间运行Alamofire POST请求。
我尝试使用Runloop
,以及最近的Grand Central Dispatch:
DispatchQueue.main.asyncAfter(wallDeadline: DispatchWallTime.now() + .seconds(60)) {
//Alamofire
}
我可以在应用程序使用计时器运行时轻松完成此操作,但尚未找到在后台运行应用程序的方法。
答案 0 :(得分:1)
实施起来可能相当繁重(即不简单),但如果您希望即使您的应用终止也要运行任务,则可能需要考虑writing your own LaunchAgent。
这里的诀窍是代理能够与您的应用程序交互(检索或发送共享信息)。