我正在开发一个 iPhone 应用程序,它是一个位置感知应用程序。
目前,除了先前位置的缓存之外,该应用程序运行良好。
第一次启动应用程序位置管理器会获取当前位置,然后根据当前位置显示附近的事物。
但从下一个开始,它会使用之前获取的位置,直到我重新启动手机为止,它将获取相同的位置。所以到目前为止,我很清楚位置管理器缓存了位置。
所以我的问题是如何删除此缓存并强制位置管理器获取新位置
谢谢
实际上我不认为你可以:这取决于你(在你的CLLocationManagerDelegate
实例)根据时间戳过滤您收到的职位(以确保您处理的职位是最近的职位,而不是缓存的职位)。
-(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
NSDate *eventDate = newLocation.timestamp;
NSTimeInterval howRecent = [eventDate timeIntervalSinceNow];
//该事件是否最近且足够准确?
if (abs(howRecent)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)