美文网首页
iOS百度地图使用时不弹出系统定位权限框

iOS百度地图使用时不弹出系统定位权限框

作者: 福尔摩罗 | 来源:发表于2020-08-14 11:14 被阅读0次

整理下在使用百度地图的过程中新发现的问题,在首页中我正常调用了百度地图iOS的API,代理也正常返回,但是在使用过程中始终无法弹出系统的询问位置权限的弹出框,后整理发现是因为百度地图无法触发iOS自身的定位系统,如果想要弹出系统的位置授权框就需要在首页之前,使用iOS系统的CLLocationManager来提前定位


上代码

  • 首先遵循代理CLLocationManagerDelegate

  • 然后定义属性

 @property (nonatomic, strong) CLLocationManager *locationManager;

  • 懒加载
- (CLLocationManager *)locationManager {
    if (!_locationManager) {
        _locationManager = [[CLLocationManager alloc] init];
        _locationManager.delegate = self;
        _locationManager.desiredAccuracy = kCLLocationAccuracyBest;
        _locationManager.distanceFilter = kCLLocationAccuracyHundredMeters;
        if (SSystemVersion.floatValue > 8.0) {
            [_locationManager requestWhenInUseAuthorization];
        }
        
    }
    return _locationManager;
}
  • 开始定位
-(void)startUserLocation
{
    self.locationManager.delegate = self;
    [self.locationManager startUpdatingLocation];
}

这套代码可以写在appdelegate里面也可以在首页里面和百度地图同时写,目的是触发iOS位置授权框

相关文章

网友评论

      本文标题:iOS百度地图使用时不弹出系统定位权限框

      本文链接:https://www.haomeiwen.com/subject/lncgdktx.html