浅谈iOS使用CoreLocation

iOS中使用关系定位&地图的主要两个框架

1:Map Kit :用于地图展示

2:Core Location :用于地理定位  /当然也在很多的移动电商app中有使用到索罗门(Social Local Mobile)
 
A:CoreLocation框架使用前提
 
1:导入框架(注意的是⚠️ :在Xcode6之前是需要手动去导入的,在iOS6以及6以上是不需要导入的)
2:导入头文件

#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;
---他的精确度是多少(精确度越高越会导致耗电,里面使用的是一个枚举,分别有一系列的精确范围,可以根据自己的需求去选择不同的精确度)
 
posted @ 2015-12-15 21:23  网瘾少年旭胡胡  阅读(252)  评论(0编辑  收藏  举报