1.CLLocation
1>在定位到地理位置的时候的时候会调用代理方法:
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{
CLLocation *location = [locations lastObject];
NSLog(@"%f, %f speed = %f", location.coordinate.latitude , location.coordinate.longitude, location.speed);
/*
location.coordinate; 坐标, 包含经纬度
location.altitude; 设备海拔高度 单位是米
location.course; 设置前进方向 0表示北 90东 180南 270西
location.horizontalAccuracy; 水平精准度
location.verticalAccuracy; 垂直精准度
location.timestamp; 定位信息返回的时间
location.speed; 设备移动速度 单位是米/秒, 适用于行车速度而不太适用于不行
*/
}
2> 可以设置模拟器模拟速度
bicycle ride 骑车移动
run 跑动
freeway drive 高速公路驾车
3>计算两个地理位置的距离:
// 计算两个位置之间的距离, 单位是米
[newLocation distanceFromLocation:self.prevLocation];
4>定位等服务是否可用:
返回定位服务是否可用
[CLLocationManager locationServicesEnabled];
返回延迟定位更新是否可用
[CLLocationManager deferredLocationUpdatesAvailable];
返回重大位置改变监听是否可用
[CLLocationManager significantLocationChangeMonitoringAvailable];
返回是否支持磁力计算方向
[CLLocationManager headingAvailable];
返回蓝牙信号范围服务是否可用
[CLLocationManager isRangingAvailable];