');

iOS Accedere al barometro per ottenere l'altitudine relativa

Esempio

veloce

Importa la libreria Core Motion:

import CoreMotion

Successivamente, dobbiamo creare un oggetto CMAltimeter , ma una trappola comune è crearla in viewDidLoad() . Se fatto in questo modo, l'altimetro non sarà accessibile quando abbiamo bisogno di chiamare un metodo su di esso. Tuttavia, vai avanti e crea il tuo oggetto CMAltimeter subito prima di viewDidLoad() :

let altimeter = CMAltimeter()

Adesso:

  1. Abbiamo bisogno di controllare se relativeAltitude è anche disponibile con il seguente metodo: CMAltimeter.isRelativeAltitudeAvailable .

  2. Se ciò restituisce true , puoi iniziare a monitorare il cambio di altitudine con startRelativeAltitudeUpdatesToQueue

  3. Se non ci sono errori, dovresti essere in grado di recuperare i dati dalle proprietà relativeAltitude e pressione.

Di seguito è riportata la definizione di un'azione del pulsante per iniziare il monitoraggio con il nostro barometro.

@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)")
        }
    })
}