San*_*ose 1 iphone cllocationmanager
我在用
startMonitoringSignificantLocationChanges
得到(lat,lon)值.我的问题是
- (void)locationManager:(CLLocationManager*)manager didUpdateToLocation:(CLLocation*)newLocation fromLocation:(CLLocation*)oldLocation
[locationMangerObject startMonitoringSignificantLocationChanges];遇到后,方法不会被立即调用.内部didUpdateToLocation方法只保留两个全局双变量来保存纬度和经度,这些变量将根据从didUpdateToLocation方法获得的坐标设置.这些值被传递给web服务,因为didUpdateToLocation只被调用某些延迟,在这些延迟之间,(lat,lon)的参数将零作为其值并传递给服务,从而导致意外响应.
怎么做
- (void)locationManager:(CLLocationManager*)manager didUpdateToLocation:(CLLocation*)newLocation fromLocation:(CLLocation*)oldLocation
在`[locationMangerObject startMonitoringSignificantLocationChanges]之后立即调用的方法; 遇到了.
请有人建议我解决这个问题的解决方案.
提前致谢.
也许您应该考虑使用startUpdatingLocation方法而不是startMonitoringSignificantLocationChanges.来自iOS文档:
此方法立即返回.调用此方法会导致位置管理器获取初始位置修复(可能需要几秒钟),并通过调用其locationManager:didUpdateToLocation:fromLocation:method来通知您的委托.
| 归档时间: |
|
| 查看次数: |
2939 次 |
| 最近记录: |