iOS 应用程序在后台时无法接收位置更新

标签 ios swift location

我的应用在使用中和在后台运行时需要频繁更新位置。

我已启用后台模式 --> 我的应用程序的位置更新,但我的应用程序在进入后台模式后约 10 秒停止接收位置更新。

enter image description here

我的代码:

func initializeLocationManager()
{
    locationManager = CLLocationManager()
    locationManager.delegate = self
    locationManager.desiredAccuracy = kCLLocationAccuracyBest
    locationManager.requestAlwaysAuthorization()
    locationManager.distanceFilter = 1
}

func startLocationManager()
{
    locationManager.startUpdatingLocation()
}

我还在 info.plist 中添加了以下内容:

NSLocationAlwaysUsageDescription

如有任何帮助,我们将不胜感激。

谢谢。

最佳答案

这解决了我的问题:

    if #available(iOS 9.0, *) {
        locationManager.allowsBackgroundLocationUpdates = true
    } else {
        // Fallback on earlier versions
    }

关于iOS 应用程序在后台时无法接收位置更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33752758/

相关文章:

swift - 在扩展中重新声明成员*有时*会隐藏原始成员。为什么?

ios - 将基本 HTTP 身份验证 header 添加到 AFHttpRequestOperation 并下载文件

ios - SceneKit:变换纹理以仅填充球体的一部分

objective-c - MGSplitView Controller 框架变化

ios - 在符合该协议(protocol)的类的声明中指定协议(protocol)函数的返回类型

javascript - 使用 JavaScript 代码在 Google map 中添加更多具有不同位置的标记

c# - 在同一屏幕位置创建新表单

java - 从 Java 中的时区获取纬度和经度

ios - ScrollView didEndDragging 时预测可见索引路径

ios - Xcode 新构建系统 CocoaPods "Copy Pods Resources"在输出文件中有 Assets.car 并与 "Copy Bundle Resources"冲突