当我设置“AllowBackgroundLocationUpdates = Yes”和“requestAlwaysAuthorization”时,我可以在后台连续执行操作吗?

时间:2016-03-30 09:18:24

标签: ios iphone cllocationmanager cllocation

我正在开发一个有需求的iOS应用程序,因此我必须以一秒的间隔将设备位置更新到我们的服务器。

我已将'CLLocationManager'的'allowsBackgroundLocationUpdates'属性设置为'YES'。我还将位置服务权限请求模式设置为“requestAlwaysAuthorization”。 (我还在我所需的背景模式功能中设置了'LocationUpdates'。)

因此,即使我的应用程序放在后台,应用程序仍然处于唤醒状态。即;即使我的应用程序在后台,我也可以进行API调用/发送套接字消息。

我知道即使对于没有启用后台模式的应用程序,应用程序仍会在后台保持唤醒状态,持续时间约为10秒或更长时间,具体取决于电池和其他变量。

当我进行测试时,应用程序很容易保持清醒2-3小时,这足以满足我的要求。

那么,我应该依赖我的应用程序保持清醒还是需要创建一个'BackgroundTask'来更新服务器的位置?

感谢。

PS:我知道上述方法电池效率不高,但每秒更新都是客户要求的。

0 个答案:

没有答案