CoreLocation使用实例和简单注释
import UIKit
import CoreLocation //引入CoreLocation包
//继承CLLocationManagerDelegate协议.当后台接收到地理位置改变的信息后,回调我们应用程序.
class ViewController: UIViewController ,CLLocationManagerDelegate{
let locationManger : CLLocationManager = CLLocationManager() //定义一个CLLocationManager类型常量
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//初始化各项参数
locationManger.delegate = self
locationManger.desiredAccuracy = kCLLocationAccuracyBest //使用最好的精确度
locationManger.requestAlwaysAuthorization()
locationManger.startUpdatingLocation() //告诉ios后台,给我们发送location信息
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
//重载CLLocationManagerDelegate类里的locationManager函数
//当地理位置发生改变后,传一个[CLLocation]数组进来
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]){
//取最后一个元素
let location:CLLocation = locations[locations.count-1] as CLLocation
//horizontalAccuracy大于0,说明定位有效.
if (location.horizontalAccuracy>0){
print(location.coordinate.latitude)
print(location.coordinate.longitude)
locationManger.stopUpdatingLocation()
}
}
func locationManager(manager: CLLocationManager, didFailWithError error: NSError){
print(error)
}
}