Ios 在后台运行应用程序?

Ios 在后台运行应用程序?,ios,background,Ios,Background,我的应用程序在后台运行(获取位置更新),我需要每隔10秒将其推送到服务器 我已经安排了一个计时器,它调用一个函数,在该函数中,当前位置更新被捕获并推送到服务器。如果应用程序位于前台,则运行平稳。当应用程序移动到后台时,此功能将运行15分钟,之后我根本看不到调用的方法 我知道如果一个应用程序被放到后台,它将在任何时候被置于挂起状态。此外,如果在前台运行的另一个应用程序需要内存,iOS可能会在后台终止某些应用程序。但在我的情况下,没有应用程序在前台运行,因为我已经锁定了我的设备 我对expirati

我的应用程序在后台运行(获取位置更新),我需要每隔10秒将其推送到服务器

我已经安排了一个计时器,它调用一个函数,在该函数中,当前位置更新被捕获并推送到服务器。如果应用程序位于前台,则运行平稳。当应用程序移动到后台时,此功能将运行15分钟,之后我根本看不到调用的方法

我知道如果一个应用程序被放到后台,它将在任何时候被置于挂起状态。此外,如果在前台运行的另一个应用程序需要内存,iOS可能会在后台终止某些应用程序。但在我的情况下,没有应用程序在前台运行,因为我已经锁定了我的设备

我对expirationHandler也有一个想法。我想知道我是否可以继续在后台调用函数,而不会让我的应用程序进入暂停状态,苹果应该接受这一点


欢迎提出任何建议。

您可以在plist中的
所需后台模式下添加
应用程序注册以进行位置更新

同样的场景也出现在我的应用程序中,我在plist文件中设置了uibackground模式,并使用appdeligate提供的服务,苹果批准了该应用程序:)
希望它能帮助你

然后准备好观看你的应用程序因未正确使用后台模式而被拒绝。如果该应用程序具有获取位置更新的相关功能,并且用户知道该功能(related一词由Apple定义),则该应用程序将得以生存。然后解释大量的“wahh my app因未正确使用后台模式而被拒绝”关于堆栈溢出的问题。嗯,你必须非常清楚地说明在重大变化模式中使用它的理由。悲哀,但这是真的。有明确描述的支持是一种需要。。。。你的代码需要处理很多情况。这个问题已经被问过很多次了。你不能总是每X秒随意调用你的代码。苹果不允许这样做,因为这是对CPU时间和电池的浪费。故事到此结束。你可以做的是注册重要的位置更新,当用户移动到新的“区域”时,这将通知你的应用程序。