CoreLocation

地图和定位

Map Kit:地图展示
Core Location:地理定位

术语

LBS:Location Base Service,基于位置服务
SoLoMo:Social Local Mobile 寻找附近的人

框架

所有CoreLocation框架中数据类型的前缀都是CL
使用CLLocationManager来做用户定位

CLLocationManager

是位置定位的一个全局管理器


  • 开始定位
    - (void)startUpdatingLocation;
    当使用了该方法后,就开始不断的定位用户的位置,中途会频繁的调用下面的方法
    - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations;
  • 结束定位
    - (void)stopUpdatingLocation;

使用

1.创建CLLocationManager对象
2.获取用户权限
3.设置代理 --> 获取用户位置
4.调用定位方法
5.停止定位
distanceFilter
功能:当位置发生改变以后再调用delegate方法,以此节省电量。
传入的参数为double,例如:
	distanceFilter = 10; 
	意思就是,当位置发生超过10米的变化时,才会调用delegate的方法。
	距离筛选器,是对手机电量的一个优化,防止频繁调用delegate方法导致耗电。

######desiredAccuracy

iPhone手机定位方式:GPS、Wifi、移动基站(流量)

  • 功能:改变与卫星定位的精准度,也就是改变手机与卫星进行的计算。
  • 参数:
kCLLocationAccuracyBestForNavigation;      对于导航来说是最好的
kCLLocationAccuracyBest;				最好的
kCLLocationAccuracyNearestTenMeters;	半径10米
kCLLocationAccuracyHundredMeters;		半径100米
kCLLocationAccuracyKilometer;			半径1000米
kCLLocationAccuracyThreeKilometers;		半径3000米

降低定位的精准度以节省电量。

上一篇:java使用数组和链表实现栈和队列


下一篇:jQuery