我有一个场景,我搜索当前位置。一旦当前位置搜索开始我使用“startMonitoringSignificantLocationChanges”我得到didUpdateToLocation委托调用,我得到一个位置值。
搜索结束后,我使用“stopMonitoringSignificantLocationChanges”来关闭GPS。
我的问题是我可能会在一段时间后进行不同的位置搜索,当它完成时,我会在GPS开启后再次开始搜索当前位置但是“didUpdateToLocation”未被调用。
我在视图控制器中完成所有这些操作。
我已经初始化了位置管理器,并将desiredAccuracy设置为“kCLLocationAccuracyNearestTenMeters”,并将distanceFilter设置为“10.0f”。
为什么我无法在弯曲位置更新并再次启动时调用“didUpdateToLocation”委托。
请任何人帮助我......
期待你们任何人的积极回应。
谢谢。
答案 0 :(得分:2)
您应该使用startUpdatingLocation而不是startMonitoringSignificantLocationChanges。 startMonitoringSignificantLocationChanges仅在位置发生重大变化时调用didUpdateToLocation。
if (locationManager == nill)
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters;
locationManager.distanceFilter = 10;
[locationManager startUpdatingLocation];