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

有没有办法定期唤醒ios应用程序?,ios,swift,apple-push-notifications,Ios,Swift,Apple Push Notifications,我需要我的应用程序每x小时唤醒一次,从设备中获取数据并将其发送到服务器 这是可行的吗?如果我可以实现voip推送套件或fcm 谢谢。使用后台任务 请求系统在后台启动应用程序以运行任务 这些文章可能对你有帮助。 来自苹果的示例应用程序。 WWWDC toturial 这可以通过使用PushKit的VoIP推送通知来实现,VoIP推送通知不会出现在没有声音和徽章的设备上,因此可以在每个间隔后生成此消息并在其上执行相应的操作。 请参阅此链接: 或 您可以做的是,在应用程序进入后台或终止之前,

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

这是可行的吗?如果我可以实现voip推送套件或fcm

谢谢。

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


这些文章可能对你有帮助。

来自苹果的示例应用程序。

WWWDC toturial

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

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

记住,你只有180秒的时间来完成这个背景任务(根据我的研究)

您可以将其初始化为

application.setMinimumBackgroundFetchInterval(1800)


每次将应用程序带到后台或终止时,此功能都会收到一个呼叫。

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

您需要从设备中获取哪些数据?检查此项-我了解到VOIP,没有,如果我使用它,我的应用程序将被拒绝。但是如果用户刷走了应用程序,后台任务将不起作用。VOIP不适合我的情况,并且发现如果我使用它,我的应用程序将被拒绝。除此之外,我认为如果应用程序被刷走或终止,后台任务不会运行。我的功能需要4-6秒才能完成,所以我不需要做几分钟长的任务,但我需要的是每天至少运行一次功能,无需用户干预。后台任务也可以在终止模式下工作,4-6秒也可以通过它轻松实现。