Kompatibilität mit Bedienung über Gesten sicherstellen

Ab Android 10 (API-Level 29) unterstützt das Android-System die vollständig bewegungsbasierte Navigation. App-Entwickler müssen zwei Dinge tun, um sicherzustellen, dass ihre Apps mit dieser Funktion kompatibel sind:

  • Verlängern Sie App-Inhalte.
  • Umgang mit in Konflikt stehenden App-Gesten

Außerdem wird in Android 13 (API-Level 33) eine vorhersehbare „Zurück“-Touch-Geste für Android-Geräte wie Smartphones, große Bildschirme und faltbare Geräte eingeführt, die Teil eines mehrjährigen Release ist. App-Entwickler können Maßnahmen ergreifen, damit ihre Apps die vorausschauende Zurück-Geste unterstützen.

Edge-to-Edge-App-Inhalte bereitstellen

Damit Sie den zusätzlichen Bildschirmraum, der durch die unverankerte Navigationsleiste zur Verfügung steht, nutzen können, müssen Sie bestimmte Änderungen in Ihrer App konfigurieren.

Weitere Informationen finden Sie unter Edge-to-Edge-Inhalte in Ihrer App darstellen.

Umgang mit in Konflikt stehenden App-Gesten

Das Modell der Bedienung über Gesten kann mit Gesten in Konflikt stehen, die zuvor von App-Entwicklern verwendet wurden. Deshalb müssen Sie möglicherweise Anpassungen an der Benutzeroberfläche Ihrer App vornehmen.

Konflikte mit „Zurück“-Touch-Gesten

Die neue Systemgeste für den Zurück-Modus ist ein Wischen vom linken oder rechten Displayrand nach innen. Dies könnte App-Navigationselemente in diesen Bereichen beeinträchtigen. Damit die Elemente am linken und rechten Bildschirmrand weiterhin funktionieren, deaktiviere die Touch-Geste „Zurück“ selektiv, indem du dem System zeigst, welche Bereiche die Eingabe per Berührung erhalten müssen. Dazu übergeben Sie eine List<Rect> an die mit Android 10 eingeführte View.setSystemGestureExclusionRects() API. Diese Methode ist seit androidx.core:core:1.1.0-dev01 auch in ViewCompat verfügbar.

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 Touch-Gesten für den Startbildschirm oder schnelles Wechseln

Bei den neuen System-Gesten für die Startseite und den Schnellwechsel werden die Gesten unten auf dem Bildschirm in dem Bereich, in dem zuvor die Navigationsleiste eingenommen war, wischt. Diese Touch-Gesten können für Apps nicht deaktiviert werden, wie es mit der „Zurück“-Touch-Geste möglich ist.

Um dieses Problem zu beheben, wird in Android 10 die WindowInsets.getMandatorySystemGestureInsets() API eingeführt, die Apps über die Grenzwerte für die Berührungserkennung informiert.

Spiele und andere Nicht-View-Apps

Bei Spielen und anderen Apps, die keine Ansichtshierarchie haben, müssen Nutzer häufig in die Nähe der Touch-Gesten des Systems wischen. In diesen Fällen können Spiele mithilfe von Window.setSystemGestureExclusionRects() Bereiche ausschließen, die sich mit Bereichen überschneiden, die für Systemgesten reserviert sind. Spiele dürfen diese Bereiche nur bei Bedarf ausschließen, z. B. während des Spiels.

Wenn der Nutzer bei einem Spiel in der Nähe des Touch-Gestenbereich für das Zuhause wischen muss, kann die App das Layout im immersiven Modus anfordern. Dadurch werden die Systemgesten deaktiviert, während der Nutzer mit dem Spiel interagiert. Der Nutzer kann die Systemgesten jedoch wieder aktivieren, indem er vom unteren Bildschirmrand wischt.

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

Mit Android 13 (API-Level 33) wird eine vorausschauende Zurück-Touch-Geste für Android-Geräte wie Smartphones, große Bildschirme und faltbare Geräte eingeführt. Die vorausschauende Back-Touch-Geste ist Teil eines mehrjährigen Release. Wenn diese Funktion vollständig implementiert ist, können Nutzer eine Vorschau des Ziels oder eines anderen Ergebnisses einer Zurück-Touch-Geste ansehen, bevor sie sie vollständig abschließen. So können sie entscheiden, ob sie in der aktuellen Ansicht fortfahren oder bleiben möchten.

Weitere Informationen finden Sie unter Unterstützung für „Geste „Zurück“.

Zusätzliche Ressourcen

Weitere Informationen zur Bedienung über Gesten finden Sie hier:

Blogposts

Videos