获取地理信息(swift)
- 1.insert
CLLocationManagerDelegate
- 2.初始化
var locationManager: CLLocationManager!
locationManager = CLLocationManager()
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.requestAlwaysAuthorization()
locationManager.startUpdatingLocation()
- 3.delegate
func locationManager(manager: CLLocationManager,didFailWithError error: NSError) {
}
func locationManager(manager: CLLocationManager,didUpdateLocations locations: [CLLocation]) {
CLGeocoder().reverseGeocodeLocation(manager.location!,completionHandler: {(placemarks,error)->Void in if (error != nil) { return } if placemarks!.count > 0 { let pm = placemarks![0] self.displayLocationInfo(pm) } }) } func displayLocationInfo(placemark: CLPlacemark?) { if let containsPlacemark = placemark { locationManager.stopUpdatingLocation() let locality = (containsPlacemark.locality != nil) ? containsPlacemark.locality : "" let postalCode = (containsPlacemark.postalCode != nil) ? containsPlacemark.postalCode : "" let administrativeArea = (containsPlacemark.administrativeArea != nil) ? containsPlacemark.administrativeArea : "" let country = (containsPlacemark.country != nil) ? containsPlacemark.country : "" } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。