繁体   English   中英

有没有办法定期唤醒 ios 应用程序?

[英]Is there a way to wake the ios app periodically?

我需要我的应用每 x 小时唤醒一次,从设备中获取数据并将其发送到服务器。

这是可行的吗? 如果我可以实现 voip pushkit 或 fcm?

谢谢。

使用后台任务

请求系统在后台启动您的应用程序以运行任务。


这些文章可能会对您有所帮助。

后台任务

BGTaskScheduler

来自 Apple 的示例应用程序。

使用后台任务刷新和维护您的应用程序

WWWDC 教程

应用后台执行的进展

这可以通过使用 PushKit 的 VoIP 推送通知在一定程度上实现,VoIP 推送通知不会出现在没有声音和徽章的设备上,因此可以在每个间隔后生成它并对其执行相应的操作。 参考这个链接:

https://medium.com/mindful-engineering/voice-over-internet-protocol-voip-801ee15c3722

或者

您可以做的是在您的应用程序进入后台或终止之前,您可以收集数据并将其发送到服务器。 这可以用这个来完成(参考代码):

https://www.hackingwithswift.com/example-code/system/how-to-run-code-when-your-app-is-terminated

请记住,您只有 180 秒的时间来执行此后台任务(根据我的研究)。

您可以将其初始化为

application.setMinimumBackgroundFetchInterval(1800)

每次您的应用程序被带到后台或终止时,此 function 都会接到一个电话。

您不能定期执行此操作,但您可以通过服务器的帮助使用 VOIP Pushkit 执行此操作。 但我不确定苹果是否允许没有呼叫功能的 VOIP。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM