后台位置跟踪无法在物理设备swift上工作

我按照本教程( https://www.raywenderlich.com/92428/background-modes-ios-swift-tutorial )创建了一个应用程序,用于在后台映射用户的位置。 它要求跟踪用户的位置,即使应用程序关闭,用户按下是,它跟踪后台的位置,每秒更新一次左右。 它在模拟器中完美运行,但是侧载到物理iPhone 6上,它停止检查用户在后台的位置。

我解决了这个问题 如果您的后台位置跟踪在模拟器中运行但在运行iOS 9或更高版本的物理手机上没有,则通过添加以下代码来修复:

if #available(iOS 9.0, *) { locationManager.allowsBackgroundLocationUpdates = true } else { // You don't need anything else on earlier versions. } 

把它放在任何地方,也许在你的viewdidload中。