我的应用程序在后台运行(获取位置更新),我需要每10秒将它推送到服务器。在后台运行应用程序?
我已经安排了一个计时器,调用一个函数,在该函数中捕获当前位置更新并将其推送到服务器。如果应用程序在前台存在,这会顺利运行。当应用程序移动到后台时,此功能运行15分钟,之后我根本看不到所调用的方法。
我知道如果一个应用程序被放入后台,它随时会进入挂起状态。另外,如果在前台运行的另一个应用程序需要内存,那么iOS可能会在后台终止一些应用程序。但在我的情况下,没有应用程序在前台运行,因为我锁定了我的设备。
我也对expirationHandler
有一个想法。想知道如果我的应用程序进入暂停状态,Apple可以接受,我是否可以在后台继续调用该功能。
欢迎任何建议。
这个确切的问题已被问了很多次。你不能随便每隔X秒就随意调用你的代码。 Apple不允许这样做,因为这会浪费CPU时间和电池。这是故事的结尾。您*可以*做的是注册重要的位置更新,并在用户移动到新的“区域”时通知您的应用程序。 – borrrden