标签:
CoreLocation这个定位框架除了可以获取设备的位置数据,还可以获取设备的方向(可以用来实现指南针功能等)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
import UIKit import CoreLocation class ViewController : UIViewController , CLLocationManagerDelegate { //定位管理器 let locationManager: CLLocationManager = CLLocationManager () @IBOutlet weak var label1: UILabel ! @IBOutlet weak var label2: UILabel ! @IBOutlet weak var label3: UILabel ! @IBOutlet weak var label4: UILabel ! override func viewDidLoad() { super .viewDidLoad() //设置定位服务管理器代理 locationManager.delegate = self //设置定位进度 locationManager.desiredAccuracy = kCLLocationAccuracyBest //发送授权申请 locationManager.requestAlwaysAuthorization() } //获取设备是否允许使用定位服务 func locationManager(manager: CLLocationManager !, didChangeAuthorizationStatus status: CLAuthorizationStatus ) { if status == CLAuthorizationStatus . NotDetermined || status == CLAuthorizationStatus . Denied { } else { //允许使用定位服务的话,开启定位服务更新 locationManager.startUpdatingHeading() println ( "方向定位开始" ) //关闭定位 //locationManager.stopUpdatingHeading() } } //方向改变执行 func locationManager(manager: CLLocationManager !, didUpdateHeading newHeading: CLHeading !) { label1.text = "磁极方向:\(newHeading.magneticHeading)" label2.text = "真实方向:\(newHeading.trueHeading)" label3.text = "方向的精度:\(newHeading.headingAccuracy)" label4.text = "时间:\(newHeading.timestamp)" } } |
Swift - 使用CoreLocation获取设备方向(真实方向,磁极方向)
标签:
原文地址:http://www.cnblogs.com/Free-Thinker/p/4843574.html