[英]ios 9 app not reporting location in background
我正在編寫(在Swift中)一個需要位置更新的iOS 9應用程序,包括后台模式。 問題是我只在前台獲得位置更新。 我想我已經做好了一切:
在info.plist中:
為NSLocationAlwaysUsageDescription指定了值。
為NSLocationUsageDescription指定了值。
為NSLocationWhenInUseUsageDescription指定了值。
包含在UIBackgroundModes中的“位置”。
在UIRequiredDeviceCapabilities中包含“gps”和“location-services”
啟動了位置管理器,如下所示:
let locationManager = CLLocationManager() locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters locationManager.distanceFilter = 250.0 locationManager.allowsBackgroundLocationUpdates = true locationManager.startUpdatingLocation()
我還驗證了locationManager.pausesLocationUpdatesAutomatically是false。
當應用程序不在前台時,我沒有獲得位置更新。 我唯一一次獲得位置更新是因為我將應用程序帶到前台,即便如此,也不是所有時間。
知道出了什么問題嗎? 或者我的期望不正確?
你是如何將應用程序發送到后台的? 如果您滑動以殺死,那么您的應用將不會自動重新啟動以接收位置事件。 我在你的代碼中沒有看到它,你是否調用了requestAlwaysAuthorization? 您可能還想實現LocationManager:didFailWithError,以查看是否能為您提供任何想法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.