我创建了一个与信标通信的应用程序,并管理地图和locationManager。
问题在于,当显示地图时,标题校准屏幕经常出现太多,即使我实现了locationManager委托的此方法也返回NO。但它永远不会被称为:
- (BOOL)locationManagerShouldDisplayHeadingCalibration:(CLLocationManager *)manager
这是我的locationManager的配置:
self.locationManager = [[CLLocationManager alloc] init];
if ([self.locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
[self.locationManager requestWhenInUseAuthorization];
}
[self.locationManager setDelegate:self];
[self.locationManager setDistanceFilter:1];
[self.locationManager requestAlwaysAuthorization];
[self.locationManager setDesiredAccuracy:kCLLocationAccuracyBestForNavigation];
[self.locationManager startUpdatingLocation];
[self.locationManager startUpdatingHeading];
我还将MKMapView设置为MKUserTrackingModeFollowWithHeading
,我在StackOverflow中看到了其他问题,指出它可能会干扰locationManager委托方法。
在这个应用程序中,跟踪用户在地图中的位置并让我的locationManager同时工作非常重要。
不知道这是一个错误还是存在解决方案。
提前致谢!
答案 0 :(得分:0)
你是否设置了委托对象?你发布了配置,它不存在......