有没有办法在iOS上运行后台任务?比如定期检查手机的一些系统状况,并报告小部件?
此外,我发现如果iPhone被关闭,那么当手机重新启动时,这些后台任务将无法再次执行。
发布于 2016-10-21 01:06:06
简短的回答是:不。长长的答案更加细微,但无论如何你都不应该这么做。你可以安排你的应用程序进行后台刷新,但这是不可靠的(应用程序不会以固定的时间间隔运行),如果用户在任务切换器中滑动应用程序,应用程序将根本不会在后台运行。另一种黑客方式是让服务器发送静默推送,以更可靠地唤醒应用程序。然而,这仍然不能保证成功;如果用户在任务切换器中滑动应用程序,您的应用程序将不会运行。
在任何一种情况下,你都不能从你的应用程序触发小部件更新。小部件的生命周期由操作系统管理。相反,在那里实现widgetPerformUpdate(completionHandler:)并执行小部件更新。但是,如上所述,这不是周期性操作。
https://stackoverflow.com/questions/40160088
复制相似问题