Поиск…
Доступ к барометру для получения относительной высоты
стриж
Импортируйте библиотеку Core Motion:
import CoreMotion
Затем нам нужно создать объект CMAltimeter
, но общей ошибкой является создание его в viewDidLoad()
. Если это будет сделано, альтиметр не будет доступен, если нам нужно вызвать метод на нем. Тем не менее, продолжайте и создайте свой объект CMAltimeter
непосредственно перед viewDidLoad()
:
let altimeter = CMAltimeter()
Сейчас:
Нам нужно проверить, доступен ли
relativeAltitude
с помощью следующего метода:CMAltimeter.isRelativeAltitudeAvailable
.Если это вернет
true
, вы можете начать мониторинг изменения высоты с помощьюstartRelativeAltitudeUpdatesToQueue
Если ошибок нет, вы должны иметь возможность извлекать данные из
relativeAltitude
свойств и свойств давления.
Ниже приведено определение действия кнопки, чтобы начать мониторинг с помощью нашего барометра.
@IBAction func start(sender: AnyObject){
if CMAltimeter.isRelativeAltitudeAvailable() {
// 2
altimeter.startRelativeAltitudeUpdatesToQueue(NSOperationQueue.mainQueue(), withHandler: { data, error in
// 3
if (error == nil) {
println("Relative Altitude: \(data.relativeAltitude)")
println("Pressure: \(data.pressure)")
}
})
}