Z przyjemnością informujemy, że Jetpack WindowManager 1.5.0 jest już stabilny.
Ta wersja opiera się na solidnych podstawach adaptacyjności w WindowManager, dzięki czemu jeszcze łatwiej jest tworzyć dopracowane, adaptacyjne interfejsy, które świetnie wyglądają na ekranach o różnych rozmiarach. Ekosystem Androida stale się rozwija, a użytkownicy korzystają z aplikacji na coraz większej liczbie urządzeń – od telefonów i urządzeń składanych po tablety, podłączone wyświetlacze, Chromebooki, a nawet wyświetlacze samochodowe w trybie parkowania.
WindowManager 1.5 koncentruje się na udostępnianiu lepszych narzędzi do pracy w tym zróżnicowanym środowisku urządzeń.
Co nowego w WindowManager 1.5
Ta stabilna wersja wprowadza nowe punkty przerwania dla bardzo dużych ekranów, ulepsza interfejs API do osadzania aktywności i zapewnia większą elastyczność w obliczaniu danych okna.
Nowe klasy rozmiarów okien: duży i bardzo duży
Największą nowością w wersji 1.5 jest dodanie 2 nowych klas rozmiarów okien: duży i bardzo duży.
Klasy rozmiarów okien to nasz oficjalny, subiektywny zestaw punktów przerwania widocznego obszaru, które pomagają projektować i tworzyć adaptacyjne układy. W wersji 1.5 rozszerzamy te wskazówki na ekrany większe niż typowe tablety.
Oto nowe punkty przerwania szerokości:
- Duży: szerokość od 1200 dp do 1600 dp.
- Bardzo duży: szerokość ≥ 1600 dp.
Różne klasy rozmiarów okien w zależności od szerokości wyświetlacza.
Dlaczego są one ważne?
Od wersji beta 2 Androida 16 QPR1 Android obsługuje podłączone wyświetlacze, dzięki czemu użytkownicy mogą podłączyć wyświetlacz zewnętrzny do urządzenia i przekształcić je w narzędzie przypominające komputer z dużym ekranem.
Telefon podłączony do wyświetlacza zewnętrznego z sesją na pulpicie na wyświetlaczu zewnętrznym.
Dzięki tej nowej funkcji subiektywne wskazówki dotyczące większych wyświetlaczy są kluczowe.
Na tych bardzo dużych powierzchniach samo skalowanie układu rozszerzonego tabletu nie zawsze zapewnia najlepsze wrażenia użytkownika. Na przykład klient poczty e-mail może wygodnie wyświetlać 2 panele (skrzynkę pocztową i wiadomość) w klasie rozmiaru okna Rozszerzony. Ale na bardzo dużym monitorze komputerowym klient poczty e-mail może elegancko wyświetlać 3, a nawet 4 panele – być może skrzynkę pocztową, listę wiadomości, pełną treść wiadomości oraz panel kalendarza lub zadań.
Dzięki oficjalnym punktom przerwania dla bardzo dużych rozmiarów wyświetlaczy WindowManager 1.5 daje Ci jasny sygnał, aby wprowadzić układy zaprojektowane specjalnie z myślą o produktywności i bogatych w informacje wrażeniach na pulpicie.
Klasy rozmiarów okien można obliczyć za pomocą funkcji computeWindowSizeClass(), która jest funkcją rozszerzającą biblioteki androidx.window.core.layout i rozszerza typ Set<WindowSizeClass>.
Aby uwzględnić nowe klasy rozmiarów okien w projekcie, po prostu wywołaj funkcję z zestawu WindowSizeClass.BREAKPOINTS_V2 zamiast WindowSizeClass.BREAKPOINTS_V1:
val currentWindowMetrics = WindowMetricsCalculator.getOrCreate() .computeCurrentWindowMetrics(LocalContext.current) val sizeClass = WindowSizeClass.BREAKPOINTS_V2 .computeWindowSizeClass(currentWindowMetrics)
Następnie zastosuj odpowiedni układ, gdy masz pewność, że aplikacja ma co najmniej tyle miejsca:
if(sizeClass.isWidthAtLeastBreakpoint(
WindowSizeClass.WIDTH_DP_LARGE_LOWER_BOUND)){
...
// window is at least 1200 dp wide
}
Biblioteki adaptacyjne
Biblioteka Compose Material 3 Adaptive pomaga tworzyć adaptacyjne interfejsy, które automatycznie dostosowują się do bieżących konfiguracji okien, takich jak klasy rozmiarów okien czy pozycje urządzeń.
Dobra wiadomość jest taka, że biblioteka jest już aktualna i zawiera nowe punkty przerwania. Od wersji 1.2 (obecnie w wersji Release Candidate) domyślne funkcje dyrektywy szkieletu panelu obsługują klasy rozmiarów okien duży i bardzo duży.
Wystarczy, że zadeklarujesz w pliku kompilacji Gradle, że chcesz używać nowych punktów przerwania:
currentWindowAdaptiveInfo( supportLargeAndXLargeWidth = true)
Dodatkowe ulepszenia
- Osadzanie aktywności – automatyczne zapisywanie i przywracanie: WindowManager może teraz automatycznie zapisywać i przywracać stan podziałów osadzania aktywności. Pomaga to zachować układ użytkownika podczas ponownego tworzenia procesu, co zapewnia bardziej stabilne i spójne wrażenia. Deweloperzy nie muszą już ręcznie zapisywać i przywracać stanu, ale mogą po prostu włączyć automatyczne zapisywanie, ustawiając właściwość EmbeddingConfiguration#isAutoSaveEmbeddingState.
- Rozszerzone WindowMetrics: teraz możesz obliczać WindowMetrics z kontekstu aplikacji, a nie tylko z kontekstu aktywności. Zapewnia to większą elastyczność w dostępie do informacji o oknie z różnych części aplikacji.
Od czego zacząć
Aby zacząć używać nowych klas rozmiarów duży i bardzo duży oraz innych funkcji wersji 1.5 w projektach na Androida, zaktualizuj zależności aplikacji w pliku build.gradle.kts do najnowszej stabilnej wersji:
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 to kolejny krok w tworzeniu w pełni adaptacyjnych aplikacji, które działają na różnych urządzeniach z Androidem. Pełną listę zmian i poprawek znajdziesz w oficjalnych informacjach o wersji.
Pozdrawiamy
Czytaj dalej
-
r.r.
Nowości dotyczące produktów
Z przyjemnością informujemy o ważnym kroku w zbliżaniu do siebie komputerów mobilnych i stacjonarnych na Androidzie: obsługa podłączonych wyświetlaczy jest już ogólnie dostępna w wersji Androida 16 QPR3.
Francesco Romano • Czas czytania: 7 min
-
Nowości dotyczące produktów
Ekosystem mobilny stale się rozwija, co stwarza nowe możliwości i nowe zagrożenia. W związku z tymi zmianami Android i Google Play nadal dokładają wszelkich starań, aby miliardy użytkowników mogły bezpiecznie korzystać z aplikacji, a deweloperzy mogli rozwijać innowacje.
Vijaya Kaza • Czas czytania: 3 min
-
r.r.
Nowości dotyczące produktów
Wersja Jetpack Compose z kwietnia 2026 r. jest stabilna. Ta wersja zawiera wersję 1.11 podstawowych modułów Compose (zobacz pełne mapowanie BOM), narzędzia do debugowania elementów wspólnych, zdarzenia touchpada i inne.
Meghan Mehta • Czas czytania: 5 min
Bądź na bieżąco
Otrzymuj co tydzień najnowsze informacje o tworzeniu aplikacji na Androida na swoją skrzynkę odbiorczą.