Xamarin.Essentials: BarometerXamarin.Essentials: Barometer

Mit der Klasse Barometer können Sie den Barometersensor des Geräts überwachen, der den Druck misst.The Barometer class lets you monitor the device's barometer sensor, which measures pressure.

Erste SchritteGet started

Lesen Sie zum Einstieg in diese API das Handbuch Erste Schritte mit Xamarin.Essentials, um sicherzustellen, dass die Bibliothek ordnungsgemäß installiert und in Ihren Projekten eingerichtet ist.To start using this API, read the getting started guide for Xamarin.Essentials to ensure the library is properly installed and set up in your projects.

Verwenden des BarometersUsing Barometer

Fügen Sie Ihrer Klasse einen Verweis auf Xamarin.Essentials hinzu:Add a reference to Xamarin.Essentials in your class:

using Xamarin.Essentials;

Die Barometerfunktionalität ruft die Methoden Start und Stop auf, um auf die Änderungen der Druckmesswerte des Barometers in Hektopascal zu lauschen.The Barometer functionality works by calling the Start and Stop methods to listen for changes to the barometer's pressure reading in hectopascals. Änderungen werden über das ReadingChanged-Ereignis zurück gesendet.Any changes are sent back through the ReadingChanged event. Sie können sie z.B. wie folgt verwenden:Here is sample usage:


public class BarometerTest
{
    // Set speed delay for monitoring changes.
    SensorSpeed speed = SensorSpeed.UI;

    public BarometerTest()
    {
        // Register for reading changes.
        Barometer.ReadingChanged += Barometer_ReadingChanged;
    }

    void Barometer_ReadingChanged(object sender, BarometerChangedEventArgs e)
    {
        var data = e.Reading;
        // Process Pressure
        Console.WriteLine($"Reading: Pressure: {data.PressureInHectopascals} hectopascals");
    }

    public void ToggleBarometer()
    {
        try
        {
            if (Barometer.IsMonitoring)
              Barometer.Stop();
            else
              Barometer.Start(speed);
        }
        catch (FeatureNotSupportedException fnsEx)
        {
            // Feature not supported on device
        }
        catch (Exception ex)
        {
            // Other error has occurred.
        }
    }
}

SensorgeschwindigkeitSensor Speed

  • Schnellste: Ruft die Sensordaten so schnell wie möglich ab (in einem UI-Thread ist eine Rückgabe nicht garantiert).Fastest – Get the sensor data as fast as possible (not guaranteed to return on UI thread).
  • Spiel: Für Spiele geeignete Übertragungsrate (in einem UI-Thread ist eine Rückgabe nicht garantiert).Game – Rate suitable for games (not guaranteed to return on UI thread).
  • Normal: Für Änderungen der Bildschirmausrichtung geeignete Standardübertragungsrate.Normal – Default rate suitable for screen orientation changes.
  • UI: Für allgemeine Benutzeroberflächenaktionen geeignete Übertragungsrate.UI – Rate suitable for general user interface.

Wenn für Ihren Ereignishandler die Ausführung im UI-Thread nicht garantiert werden kann und der Ereignishandler auf Benutzeroberflächenelemente zugreifen muss, verwenden Sie die Methode MainThread.BeginInvokeOnMainThread, um diesen Code im UI-Thread auszuführen.If your event handler is not guaranteed to run on the UI thread, and if the event handler needs to access user-interface elements, use the MainThread.BeginInvokeOnMainThread method to run that code on the UI thread.

Besonderheiten bei der plattformspezifischen ImplementierungPlatform Implementation Specifics

Keine plattformspezifischen Implementierungsangaben.No platform-specific implementation details.

APIAPI