Core Location,MapKit 和Geofengcing
简介
iOS 用于支持位置和地图的服务的框架有两个,其中一个是Core Location ,由于帮助设备确定当前的位置和运动朝向以及基于位置的其他信息。另一个框架是MapKit ,用于提供位置感知相关界面,它包含的Apple Maps 以及2D 和3D 方式提供地图视图,卫星视图和混合视图,MapKit 还支持以大头针图标显示的地图标注功能,以及支持对地图上的重点位置,路径和其他特征进行编辑。
使用Core Location 框架获取用户位置的步骤:
1.必须从用户那里获取访问当前位置信息的权限
2.获取位置前确保位置服务是开启
3.发起位置请求获取当前位置
具体实现步骤:
1.导入 CoreLocation.framework 框架
2.导入头文件 #import <CoreLocation/CoreLocation.h>
3. 在info.plist 中添加 标签之前添加以下一个或两个:
<key>NSLocationWhenInUseUsageDescription</key><string>当需要的时候</string> //表示只有当程序在前台处于**状态时,才允许访问设备的位置信息
<key>NSLocationAlwaysUsageDescription</key><string>一直在后台</string> //表示即使当程序未**时用户也允许相应 的程序访问位置信息
4.在需要定义的界面中添加 CLLocationManagerDelegate协议
5.如果需要后台定位还需要在APP处于前台定位授权场景下,勾选后台运行模式update
locations (如下图) 并且,调用以下方法,设置允许后台定位
代码实现