问题一:定位走两次
定位成功后执行此代理方法
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations{
}
但是在这个方法里打印数据会发现打印了两次,说明这个方法走了两次(甚至多次调用)
原因:定位的时候,如果手机移动,经纬度也会跟着变化,该方法也会被调用
解决方法:加个标识
//判断是否执行过
@property (nonatomic,assign) BOOL isFirst;
if (_isFirst) {
return;
}
_isFirst = YES;
。。。。。
。。。。。
问题二 :定位提示框一闪而过
要用全局变量_manager,不然会被提早释放
_manager = [[CLLocationManager alloc] init];
[_manager requestAlwaysAuthorization];
[_manager requestWhenInUseAuthorization];