Ab Android 10 (API-Level 29) unterstützt das Android-System die vollständige Bedienung über Gesten. App-Entwickler müssen zwei Dinge tun, um sicherzustellen, dass ihre Apps mit dieser Funktion kompatibel sind:
- App-Inhalte von Rand zu Rand erweitern
- Mit in Konflikt stehenden App-Gesten umgehen
Außerdem wird in Android 13 (API-Level 33) eine intelligente „Zurück“-Geste für Android Geräte wie Smartphones, Geräte mit großen Displays und Foldables eingeführt, die Teil einer mehrjährigen Veröffentlichung ist. App-Entwickler können Maßnahmen ergreifen, um sicherzustellen, dass ihre Apps die intelligente „Zurück“-Geste unterstützen.
App-Inhalte von Rand zu Rand bereitstellen
Wenn Sie den zusätzlichen Bildschirmplatz nutzen möchten, der durch die unverankerte Navigationsleiste zur Verfügung gestellt wird, müssen Sie bestimmte Änderungen in Ihrer App konfigurieren.
Weitere Informationen finden Sie unter Inhalte in Ihrer App von Rand zu Rand anzeigen.
Mit in Konflikt stehenden App-Gesten umgehen
Das Modell für die Bedienung über Gesten kann mit Gesten in Konflikt stehen, die zuvor von App-Entwicklern verwendet wurden. Möglicherweise müssen Sie daher Anpassungen an der Benutzeroberfläche Ihrer App vornehmen.
Konflikte mit „Zurück“-Gesten
Die neue System-Geste für „Zurück“ ist eine Wischbewegung vom linken oder rechten Bildschirmrand nach innen. Dies kann zu Konflikten mit App-Navigationselementen in diesen Bereichen führen. Wenn die Funktionalität von Elementen am linken und rechten Bildschirmrand erhalten bleiben soll, können Sie die „Zurück“-Geste selektiv deaktivieren, indem Sie dem System mitteilen, welche Bereiche Touch-Eingaben empfangen müssen. Dazu übergeben Sie eine
List<Rect> an die View.setSystemGestureExclusionRects()
API, die in Android 10 eingeführt wurde. Diese Methode ist ab
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 Gesten für „Startbildschirm“ oder „Schnellwechsel“
Die neuen Systemgesten für „Startbildschirm“ und „Schnellwechsel“ umfassen beide Wischbewegungen am unteren Bildschirmrand in dem Bereich, der zuvor von der Navigationsleiste belegt war. Apps können diese 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, die Apps über die Schwellenwerte für die Touch-Erkennung informiert.
Spiele und andere Apps ohne Ansicht
Bei Spielen und anderen Apps ohne Ansichtshierarchie muss der Nutzer häufig in der Nähe der Systemgestenbereiche 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. Spiele dürfen diese Bereiche nur bei Bedarf ausschließen, z. B. während des Spiels.
Wenn ein Spiel erfordert, dass der Nutzer in der Nähe des Bereichs für die „Startbildschirm“-Geste wischt, kann die App anfordern, im immersiven Modusangeordnet zu werden. 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 nach oben wischt.
App aktualisieren, um die intelligente „Zurück“-Geste zu unterstützen
In Android 13 (API-Level 33) wird eine intelligente „Zurück“-Geste für Android-Geräte wie Smartphones, Geräte mit großen Displays und Foldables eingeführt. Die intelligente „Zurück“-Geste ist Teil einer mehrjährigen Veröffentlichung. Wenn diese Funktion vollständig implementiert ist, können Nutzer eine Vorschau des Ziels oder eines anderen Ergebnisses einer „Zurück“-Geste sehen, 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 intelligente „Zurück“-Geste hinzufügen.
Zusätzliche Ressourcen
Weitere Informationen zur Bedienung über Gesten finden Sie hier: