我正在迁移现有的应用程序以与iOS 9一起使用,但没有太多需要更改,但将ATS添加到info.plist
,并使用MKAnnotationView
而不是MKPinAnnotationView
作为地图上的自定义引脚。问题是,当开始测试更改时,我注意到位置更新过于频繁,即使我静止不动。位置管理器初始化的方式没有任何改变。iOS 9 - LocationManager更新位置太频繁
这是日志的一个小例子。
2015-09-25 12:16:25.462 MyApp[2009:911066] location: <+39.09040164,-77.52540765> +/- 65.00m (speed -1.00 mps/course -1.00) @ 9/25/15, 12:16:25 PM Eastern Daylight Time
2015-09-25 12:16:25.464 MyApp[2009:911066] location: <+39.09040164,-77.52540765> +/- 65.00m (speed -1.00 mps/course -1.00) @ 9/25/15, 12:16:25 PM Eastern Daylight Time
2015-09-25 12:16:25.468 MyApp[2009:911066] location: <+39.09040164,-77.52540765> +/- 65.00m (speed -1.00 mps/course -1.00) @ 9/25/15, 12:16:25 PM Eastern Daylight Time
2015-09-25 12:16:25.475 MyApp[2009:911066] location: <+39.09040164,-77.52540765> +/- 65.00m (speed -1.00 mps/course -1.00) @ 9/25/15, 12:16:25 PM Eastern Daylight Time
位置管理设置这样
locationManager = [CLLocationManager new];
locationManager.delegate = self;
locationManager.distanceFilter = 25.0f;
[locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
if ([locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
[locationManager requestAlwaysAuthorization];
}
[locationManager startUpdatingLocation];
我猜问题是:有什么错我的执行或在那里核心位置API的变化被忽略的距离过滤器?
'CLLocationManager'上的'pausesLocationUpdatesAutomatically'属性是否设置为YES?如果设置为“是”,如果位置数据不太可能改变,则通过禁用位置更新来帮助延长电池寿命。 –
@MatteoPacini在代码中的任何一点都不会设置为“否”,默认值是“YES”。我会尝试明确地将其设置为“是”。谢谢。 – quant24
@MatteoPacini我试过了,没有任何区别。感谢寿。 – quant24