Xamarin.Essentials: Vybavený gyroskopem
Třída vybavený gyroskopem vám umožňuje monitorovat senzor vybavený gyroskopem zařízení, který se kolem tří primárních OS zařízení pohybuje.
Začínáme
Pokud chcete začít používat toto rozhraní API, přečtěte si příručku Začínáme pro, abyste měli jistotu, že je knihovna správně nainstalovaná a nastavená ve vašich projektech.
Použití vybavený gyroskopem
Do třídy přidejte odkaz Xamarin.Essentials :
using Xamarin.Essentials;
Funkce vybavený gyroskopem funguje tak, že zavolá Start metody a, Stop aby naslouchaly změnám vybavený gyroskopem. Všechny změny se odesílají zpátky prostřednictvím ReadingChanged události v rad/s. Zde je ukázka použití:
public class GyroscopeTest
{
// Set speed delay for monitoring changes.
SensorSpeed speed = SensorSpeed.UI;
public GyroscopeTest()
{
// Register for reading changes.
Gyroscope.ReadingChanged += Gyroscope_ReadingChanged;
}
void Gyroscope_ReadingChanged(object sender, GyroscopeChangedEventArgs e)
{
var data = e.Reading;
// Process Angular Velocity X, Y, and Z reported in rad/s
Console.WriteLine($"Reading: X: {data.AngularVelocity.X}, Y: {data.AngularVelocity.Y}, Z: {data.AngularVelocity.Z}");
}
public void ToggleGyroscope()
{
try
{
if (Gyroscope.IsMonitoring)
Gyroscope.Stop();
else
Gyroscope.Start(speed);
}
catch (FeatureNotSupportedException fnsEx)
{
// Feature not supported on device
}
catch (Exception ex)
{
// Other error has occurred.
}
}
}
Rychlost senzoru
- Nejrychlejší – Získejte data senzorů co nejrychleji (nezaručujeme návrat ve VLÁKNĚ uživatelského rozhraní).
- Hra – sazba vhodná pro hry (nezaručujeme návrat ve VLÁKNĚ uživatelského rozhraní).
- Výchozí – výchozí sazba je vhodná pro změny orientace obrazovky.
- Uživatelské rozhraní – sazba vhodná pro obecné uživatelské rozhraní.
Pokud vaše obslužná rutina události není zaručena spuštění ve vlákně uživatelského rozhraní a pokud obslužná rutina události potřebuje přístup k prvkům uživatelského rozhraní, použijte MainThread.BeginInvokeOnMainThread metodu ke spuštění tohoto kódu ve vlákně uživatelského rozhraní.