Поиск…
Доступ к барометру для получения относительной высоты
стриж
Импортируйте библиотеку 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)")
}
})
}