Я создаю приложение AR, используя GPS-трекинг и компас с Unity3D.
Например, когда я открываю приложение, значение trueHeading равно 260, а когда я закрываю его и открываю снова с другой ориентацией, а затем переключаю устройство в предыдущее состояние, значение trueHeading равно 210.
Я пытаюсь использовать приложение IOS с помощью swift, но возникает та же проблема.
Вот мой код Swift
import UIKit
import CoreLocation
class ViewController: UIViewController ,CLLocationManagerDelegate {
var lm:CLLocationManager!
override func viewDidLoad() {
super.viewDidLoad()
lm = CLLocationManager()
lm.delegate = self
lm.startUpdatingHeading()
Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(printHeading), userInfo: nil, repeats: true)
}
@objc func printHeading() {
print(self.lm.heading?.trueHeading)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
Та же проблема возникает с magneticHeading
.
В документации IOS говорится, что Значение в этом свойстве представляет заголовок относительно географического Северного полюса . Но это не работает, как ожидалось.