#import <CoreLocation/CoreLocation.h>
3:使用的管理者
CoreLocation中使用CLLocationManager对象来做用户定位
4:常用操作
开始用户定位
- (void)startUpdatingLocation;
停止用户定位
- (void) stopUpdatingLocation;
当调用了startUpdatingLocation方法后,就开始不断地定位用户的位置,中途会频繁地调用代理的下面方法
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations;
locations参数里面装着CLLocation对象
CLLocation用来表示某个位置的地理信息,比如经纬度、海拔等
@property(readonly, nonatomic) CLLocationCoordinate2D coordinate;
---经纬度
@property(readonly, nonatomic) CLLocationDistance altitude;
---海拔
@property(readonly, nonatomic) CLLocationDirection course;
---路线,航向(取值范围是0.0° ~ 359.9°,0.0°代表真北方向)
@property(readonly, nonatomic) CLLocationSpeed speed;
---行走速度(单位是m/s)
用- (CLLocationDistance)distanceFromLocation:(const CLLocation *)location方法可以计算2个位置之间的距离
狂减里面还有两个比较好用的属性,可以根据自己的需求去设置每隔了多少米进行定位一次/定位的精确度
@property(assign, nonatomic) CLLocationDistance distanceFilter;
---每隔多少米定位一次
@property(assign, nonatomic) CLLocationAccuracy desiredAccuracy;
---他的精确度是多少(精确度越高越会导致耗电,里面使用的是一个枚举,分别有一系列的精确范围,可以根据自己的需求去选择不同的精确度)