1.import CoreLocation
2.Info.plist中写入
Privacy - Location Usage Description 我们需要使用你的地理位置信息
NSLocationWhenInUseUsageDescription 我们需要使用你的地理位置信息
3.初始化并遵守CLLocationManagerDelegate
let locationManger:CLLocationManager = CLLocationManager()
4.判断定位服务是否开启并设置属性
判断定位服务是否开启
if CLLocationManager.locationServicesEnabled() {
print("开启")
}else{
print("未开启")
}
locationManger.delegate = self;
locationManger.requestWhenInUseAuthorization() //请求授权,之前要在infoPlist中设置
5.开始更新location
locationManger.startUpdatingLocation()
6.停止更新location
locationManger.stopUpdatingLocation()
7.代理方法
位置发生变化时执行
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]){
}
导航方向发生变化时执行
func locationManager(manager: CLLocationManager, didUpdateHeading newHeading: CLHeading){
}
进入某个区域是执行
func locationManager(manager: CLLocationManager, didEnterRegion region: CLRegion){
}
走出某个区域时执行
func locationManager(manager: CLLocationManager, didExitRegion region: CLRegion){
}
更多方法请查看官方文档