Wir freuen uns, Ihnen mitteilen zu können, dass Jetpack WindowManager 1.5.0 jetzt stabil ist.
Diese Version baut auf der starken Grundlage der Anpassungsfähigkeit in WindowManager auf und macht es noch einfacher, ansprechende, adaptive Benutzeroberflächen zu erstellen, die auf allen Bildschirmgrößen gut aussehen. Das Android-Ökosystem wächst stetig und Nutzer interagieren mit Apps auf einer Vielzahl von Geräten – von Smartphones und faltbaren Geräten über Tablets, vernetzte Displays und Chromebooks bis hin zu Autodisplays im geparkten Modus.
WindowManager 1.5 bietet bessere Tools für diese vielfältige Geräteumgebung.
Neu in WindowManager 1.5
In diesem stabilen Release werden neue Breakpoints für sehr große Displays eingeführt, die API zum Einbetten von Aktivitäten wird verbessert und die Berechnung von Fenstermesswerten wird flexibler.
Neue Fenstergrößenklassen: „Groß“ und „Extragroß“
Die größte Neuerung in Version 1.5 ist die Einführung von zwei neuen Klassen für die Fensterbreite: „Large“ und „Extra-large“.
Fenstergrößenklassen sind unsere offiziellen, meinungsbasierten Viewport-Breakpoints, die Ihnen beim Entwerfen und Entwickeln adaptiver Layouts helfen. Mit Version 1.5 erweitern wir diese Richtlinien auf Bildschirme, die über typische Tablets hinausgehen.
Hier sind die neuen Breiten-Breakpoints:
- Groß:Für Breiten zwischen 1.200 und 1.600 dp
- Extragroß:Für Breiten ≥1.600 dp
Die verschiedenen Fenstergrößenklassen basierend auf der Displaybreite.
Warum sind diese wichtig?
Ab Android 16 QPR1 Beta 2 unterstützt Android angeschlossene Displays. Nutzer können also ein externes Display an ihr Gerät anschließen und es so in ein großes Display verwandeln, das sich wie ein Desktop nutzen lässt.
Smartphone mit einem externen Display verbunden, auf dem eine Desktop-Sitzung läuft.
Da diese neue Funktion verfügbar ist, ist es wichtig, dass wir eine klare Empfehlung für größere Displays geben.
Auf diesen sehr großen Oberflächen ist das einfache Hochskalieren des erweiterten Layouts eines Tablets nicht immer die beste Lösung. Ein E‑Mail-Client kann beispielsweise in der Fenstergrößenklasse „Maximiert“ bequem zwei Bereiche (ein Postfach und eine Nachricht) anzeigen. Auf einem extragroßen Desktopmonitor könnte der E‑Mail-Client jedoch elegant drei oder sogar vier Bereiche gleichzeitig anzeigen – vielleicht ein Postfach, eine Nachrichtenliste, den vollständigen Nachrichteninhalt und einen Kalender-/Aufgabenbereich.
WindowManager 1.5 bietet offizielle Breakpoints für sehr große Displays. So erhalten Sie ein klares Signal, um Layouts einzuführen, die speziell für eine produktive, informationsreiche Desktopumgebung entwickelt wurden.
Die Fenstergrößenklassen können mit computeWindowSizeClass() berechnet werden. Das ist eine androidx.window.core.layout-Bibliotheks-Erweiterungsfunktion, die den Typ Set<WindowSizeClass> erweitert.
Wenn Sie die neuen Fenstergrößenklassen in Ihr Projekt einbeziehen möchten, rufen Sie die Funktion einfach aus dem Set WindowSizeClass.BREAKPOINTS_V2 anstelle von WindowSizeClass.BREAKPOINTS_V1 auf:
val currentWindowMetrics = WindowMetricsCalculator.getOrCreate() .computeCurrentWindowMetrics(LocalContext.current) val sizeClass = WindowSizeClass.BREAKPOINTS_V2 .computeWindowSizeClass(currentWindowMetrics)
Wenden Sie dann das richtige Layout an, wenn Sie sicher sind, dass Ihre App mindestens so viel Platz hat:
if(sizeClass.isWidthAtLeastBreakpoint(
WindowSizeClass.WIDTH_DP_LARGE_LOWER_BOUND)){
...
// window is at least 1200 dp wide
}Adaptive Bibliotheken
Mit der Compose Material 3 Adaptive-Bibliothek können Sie adaptive UIs erstellen, die sich automatisch an die aktuellen Fensterkonfigurationen wie Fenstergrößenklassen oder Gerätestatus anpassen.
Die gute Nachricht ist, dass die Bibliothek bereits auf dem neuesten Stand ist und die neuen Haltepunkte unterstützt. Ab Version 1.2 (derzeit Release Candidate) unterstützen die Standard-Pane-Scaffold-Direktiven die Größenklassen „Groß“ und „Extragroß“ für die Fensterbreite.
Sie müssen die neuen Breakpoints nur aktivieren, indem Sie in Ihrer Gradle-Build-Datei deklarieren, dass Sie sie verwenden möchten:
currentWindowAdaptiveInfo( supportLargeAndXLargeWidth = true)
Weitere Verbesserungen
- Activity Embedding – automatisches Speichern und Wiederherstellen: WindowManager kann jetzt den Status Ihrer Activity Embedding-Splits automatisch speichern und wiederherstellen. So bleibt das Layout des Nutzers bei der Neuerstellung von Prozessen erhalten, was zu einer stabileren und konsistenteren Nutzung führt. Entwickler müssen den Status nicht mehr manuell speichern und wiederherstellen, sondern können die automatische Funktion einfach aktivieren, indem sie die Eigenschaft EmbeddingConfiguration#isAutoSaveEmbeddingState festlegen.
- Erweiterte WindowMetrics: Sie können WindowMetrics jetzt nicht nur im Activity-Kontext, sondern auch im Application-Kontext berechnen. Dadurch haben Sie mehr Flexibilität beim Zugriff auf Fensterinformationen aus verschiedenen Teilen Ihrer App.
Erste Schritte
Wenn Sie die neuen Größenklassen „Groß“ und „Extragroß“ sowie andere Funktionen von Version 1.5 in Ihren Android-Projekten verwenden möchten, aktualisieren Sie die App-Abhängigkeiten in build.gradle.kts auf die aktuelle stabile Version:
dependencies {
implementation("androidx.window:window:1.5.0")
// or, if you're using the WindowManager testing library:
testImplementation("androidx.window:window-testing:1.5.0")
}WindowManager 1.5 ist ein weiterer Schritt nach vorn bei der Entwicklung vollständig adaptiver Apps, die auf verschiedenen Android-Geräten ausgeführt werden können. Eine vollständige Liste der Änderungen und Fehlerkorrekturen finden Sie in den offiziellen Versionshinweisen.
Viel Spaß beim Programmieren!
Weiterlesen
-
Produktneuheiten
Wir freuen uns, einen wichtigen Meilenstein auf dem Weg zu einer engeren Verbindung von Mobilgeräten und Computern auf Android bekannt zu geben: Die Unterstützung für verbundene Displays ist mit der Veröffentlichung von Android 16 QPR3 allgemein verfügbar.
Francesco Romano • Lesezeit: 7 Minuten
-
Produktneuheiten
Auf der Google I/O werden jedes Jahr neue Ankündigungen und Ressourcen für Ökosysteme und Produkte, einschließlich der Android-Entwicklung, vorgestellt. Da sich die Entwicklung hin zu KI- und Agent-basierten Tools verschiebt, haben wir unser Angebot erweitert, um Sie bei der Entwicklung für Android besser zu unterstützen.
Simona Milanovic • Lesezeit: 2 Minuten
-
Produktneuheiten
Auf der Google I/O 2026 haben wir gezeigt, wie Sie mit den neuesten Entwicklungen im Android-Ökosystem die Qualität Ihrer App steigern und gleichzeitig die Entwicklungseffizienz maximieren können.
Ataul Munim • Lesezeit: 3 Minuten
Auf dem Laufenden bleiben
Lassen Sie sich Woche für Woche die neuesten Informationen zur Android-Entwicklung zusenden.