我正在开发应用程序,我希望在每12个小时后运行后台服务,即使应用程序被暂停或任何状态就像Facebook一样。在该服务中,它将访问webService并获取数据。当12小时后更改数据时,我会收到添加此项目的通知,当我点击该通知时,我将移至特定屏幕。
我在很多论坛上都看到,当应用程序处于后台状态时,终止应用程序只需3-4分钟,在此之后,不会发生任何事件。 但我在Facebook,WhatsApp或任何其他社交媒体应用程序上看到,即使应用程序未运行,或处于暂停状态,该应用程序仍会收到通知。
请指导我该怎么做。
答案 0 :(得分:0)
这不是它的工作原理。 您在Facebook或WhatsApp应用中看到的通知是Push Notifications。
该应用未从服务器获取信息。它是推动"推动"的服务器。信息提供给用户的手机。
推送通知不要求您的应用处于有效状态。如果处理正确,点击它们将启动您的应用和show the correct screen。
<小时/> 要定期运行任务,您可以查看Background Fetch 这很好用,但是iOS决定何时调用它并且可以完全停止调用它(如果手机处于省电模式或者例如你的应用被手动杀死)。
请注意,在iOS中,如果您的应用被暂停/终止,则会强制设备执行代码 NO WAY 。您可能想要查看您的工作流程。