Vibration
In diesem Artikel wird beschrieben, wie Sie die .NET Multi-Platform App UI (.NET MAUI) IVibration-Schnittstelle verwenden können. Mit dieser Schnittstelle können Sie die Vibrationsfunktion für eine gewünschte Zeitspanne starten und anhalten.
Die Standardimplementierung der IVibration
-Schnittstelle ist über die Vibration.Default-Eigenschaft verfügbar. Die IVibration
-Schnittstelle sowie die Vibration
-Klasse sind im Microsoft.Maui.Devices
-Namespace enthalten.
Erste Schritte
Für den Zugriff auf die Vibrationsfunktion ist die folgende plattformspezifische Einrichtung erforderlich.
Die Berechtigung VIBRATE
ist obligatorisch und muss im Android-Projekt konfiguriert werden. Diese Berechtigung kann folgendermaßen hinzugefügt werden:
Fügen Sie die assemblybasierte Berechtigung hinzu:
Öffnen Sie die Datei Platforms/Android/MainApplication.cs, und fügen Sie die folgenden Assemblyattribute nach
using
-Direktiven hinzu:[assembly: UsesPermission(Android.Manifest.Permission.Vibrate)]
- oder -
Aktualisieren Sie das Android-Manifest:
Öffnen Sie die Datei Platforms/Android/AndroidManifest.xml, und fügen Sie Folgendes zum Knoten
manifest
hinzu:<uses-permission android:name="android.permission.VIBRATE" />
- oder -
Aktualisieren Sie das Android-Manifest im Manifest-Editor:
Doppelklicken Sie in Visual Studio auf die Datei Platforms/Android/AndroidManifest.xml, um den Android-Manifest-Editor zu öffnen. Überprüfen Sie dann unter Erforderliche Berechtigungen die Berechtigung VIBRATE. Dadurch wird die Datei AndroidManifest.xml automatisch aktualisiert.
Vibrieren des Geräts
Die Vibrationsfunktion kann für eine bestimmte Zeitspanne oder den Standardzeitraum von 500 Millisekunden angefordert werden. Mit dem folgenden Codebeispiel vibriert das Gerät zufällig zwischen einer und sieben Sekunden unter Verwendung von Vibrate(TimeSpan):
private void VibrateStartButton_Clicked(object sender, EventArgs e)
{
int secondsToVibrate = Random.Shared.Next(1, 7);
TimeSpan vibrationLength = TimeSpan.FromSeconds(secondsToVibrate);
Vibration.Default.Vibrate(vibrationLength);
}
private void VibrateStopButton_Clicked(object sender, EventArgs e) =>
Vibration.Default.Cancel();
Plattformunterschiede
In diesem Abschnitt werden die plattformspezifischen Unterschiede mit der Vibrations-API beschrieben.
Keine Plattformunterschiede.