Kompatibilität mit Bedienung über Gesten sicherstellen

Ab Android 10 (API-Level 29) unterstützt das Android-System Gesten-basierte Navigation. Es gibt zwei Dinge, die App-Entwickler tun müssen, Ihre Apps sind mit dieser Funktion kompatibel:

  • App-Inhalte sollten von Rand zu Rand reichen.
  • Umgang mit in Konflikt stehenden App-Gesten

Außerdem wird in Android 13 (API-Level 33) eine vorhersagende Geste zum Zurückgehen für Android-Geräte wie Smartphones, große Displays und faltbare Geräte eingeführt. Diese Funktion ist Teil einer mehrjährigen Veröffentlichung. App-Entwickler können Maßnahmen ergreifen, damit ihre Apps die vorausschauende Zurück-Geste unterstützen.

App-Inhalte von Rand zu Rand anzeigen

Um den zusätzlichen Platz auf dem Bildschirm zu nutzen, der durch das Floating-Format Navigationsleiste verwenden, müssen Sie bestimmte Änderungen in Ihrer App konfigurieren.

Weitere Informationen finden Sie unter Inhalte in Ihrer App randlos anzeigen.

Umgang mit sich überschneidenden App-Gesten

Das Modell für die Bedienung über Gesten kann mit Gesten in Konflikt stehen, von App-Entwicklern genutzt werden. Möglicherweise müssen Sie die Benutzeroberfläche Ihrer App anpassen.

Konflikte mit Touch-Gesten „Zurück“

Die neue Systemgeste für „Zurück“ ist ein Wischen vom linken oder rechten Displayrand nach innen. Dies könnte App-Navigationselemente in für diese Bereiche. Damit die Funktionalität der Elemente am linken und rechten Rand erhalten bleibt auf dem Bildschirm aktivieren, deaktivieren Sie die Zurück-Geste selektiv, indem Sie in welchen Regionen die Eingabe per Berührung erfolgen muss. Dazu übergeben Sie eine List<Rect> zum View.setSystemGestureExclusionRects() API wurde mit Android 10 eingeführt. Diese Methode ist ab sofort auch in ViewCompat verfügbar androidx.core:core:1.1.0-dev01.

Beispiel:

Kotlin

var exclusionRects = listOf(rect1, rect2, rect3)

fun onLayout(
        changedCanvas: Boolean, left: Int, top: Int, right: Int, bottom: Int) {
  // Update rect bounds and the exclusionRects list
  setSystemGestureExclusionRects(exclusionRects)
}

fun onDraw(canvas: Canvas) {
  // Update rect bounds and the exclusionRects list
  setSystemGestureExclusionRects(exclusionRects)
}

Java

List<Rect> exclusionRects;

public void onLayout(
        boolean changedCanvas, int left, int top, int right, int bottom) {
    // Update rect bounds and the exclusionRects list
    setSystemGestureExclusionRects(exclusionRects);
}

public void onDraw(Canvas canvas) {
    // Update rect bounds and the exclusionRects list
    setSystemGestureExclusionRects(exclusionRects);
}

Konflikte mit Gesten für die Startseite oder den Schnellwechsel

Die neuen Systemgesten für den Startbildschirm und den Schnellwechsel erfordern beides Wischen am unteren Bildschirmrand, wo sich zuvor die Navigationsleiste befand. Apps können diese Touch-Gesten nicht deaktivieren, wie es bei der Zurück-Geste möglich ist.

Um dieses Problem zu beheben, wird in Android 10 die WindowInsets.getMandatorySystemGestureInsets() API eingeführt, über die Apps über die Touch-Erkennungsgrenzwerte informiert werden.

Spiele und andere Nicht-View-Apps

Bei Spielen und anderen Apps ohne Ansichtshierarchie müssen Nutzer oft in der Nähe der Bereiche für Systemgesten wischen. In diesen Fällen können Spiele Window.setSystemGestureExclusionRects() verwenden, um Bereiche auszuschließen, die sich mit Bereichen überschneiden, die für Systemgesten reserviert sind. In Spielen müssen diese Bereiche nur bei Bedarf ausgeschlossen werden, z. B. während des Gameplays.

Wenn der Nutzer bei einem Spiel in der Nähe des Touch-Gestenbereich für das Startbildschirm wischen muss, kann die App anfragen, ob sie im immersiven Modus dargestellt werden sollen. Dadurch werden die System-Gesten deaktiviert während der Nutzer mit dem Spiel interagiert, die System-Touch-Gesten ausführen, indem Sie vom unteren Displayrand wischen.

Aktualisiere deine App, damit diese Touch-Geste „Zurück“ unterstützt wird

Android 13 (API-Level 33) führt eine vorausschauende Geste zum Zurückgehen für Android-Geräte wie Smartphones, Geräte mit großen Displays und faltbare Geräte ein. Die intelligente „Zurück“-Schaltfläche Die Touch-Geste ist Teil einer mehrjährigen Veröffentlichung. Wenn diese Funktion vollständig implementiert ist, können Nutzer sich eine Vorschau des Ziels oder eines anderen Ergebnisses einer Rückwärtsgeste ansehen, bevor sie sie vollständig ausführen. So können sie entscheiden, ob sie fortfahren oder in der aktuellen Ansicht bleiben möchten.

Weitere Informationen finden Sie unter Unterstützung für die „Vorschläge für den Rücken“-Touch-Geste hinzufügen .

Weitere Informationen

Weitere Informationen zur Gestennavigation finden Sie hier:

Blogposts

Videos