Z przyjemnością informujemy, że Jetpack WindowManager w wersji 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 wszystkich rozmiarów. 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, połączone wyświetlacze, Chromebooki, a nawet wyświetlacze samochodowe w trybie parkowania.
Biblioteka WindowManager 1.5 koncentruje się na udostępnianiu lepszych narzędzi dla tego zróżnicowanego środowiska urządzeń.
Nowości w usłudze 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że i bardzo duże
Największą zmianą w wersji 1.5 jest dodanie 2 nowych klas rozmiarów okien o różnej szerokości: dużej i bardzo dużej.
Klasy rozmiaru okna to nasz oficjalny, subiektywny zestaw punktów przerwania widocznego obszaru, który pomaga projektować i tworzyć układy adaptacyjne. W wersji 1.5 rozszerzamy te wskazówki na ekrany, które wykraczają poza typowe tablety.
Oto nowe punkty przerwania szerokości:
- Duży:dla szerokości od 1200 dp do 1600 dp
- Bardzo duży: dla szerokości ≥1600 dp
Różne klasy rozmiarów okien na podstawie szerokości wyświetlacza.
Dlaczego są one ważne?
Od wersji beta 2 Androida 16 QPR1 Android obsługuje podłączone wyświetlacze, co umożliwia użytkownikom podłączenie zewnętrznego wyświetlacza do urządzenia i przekształcenie go w narzędzie przypominające komputer stacjonarny z dużym ekranem.
Telefon podłączony do wyświetlacza zewnętrznego, na którym jest otwarta sesja pulpitu.
Dzięki tej nowej funkcji kluczowe jest podawanie opartych na opiniach wskazówek dotyczących uwzględniania większych wyświetlaczy.
Na tak dużych powierzchniach samo powiększenie układu rozszerzonego na tablecie 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 Rozszerzone. Na bardzo dużym monitorze stacjonarnym klient poczty e-mail może jednak elegancko wyświetlać 3 lub nawet 4 panele – na przykład skrzynkę pocztową, listę wiadomości, pełną treść wiadomości oraz panel kalendarza lub zadań – wszystko naraz.
Dzięki udostępnieniu oficjalnych punktów przerwania dla bardzo dużych wyświetlaczy biblioteka WindowManager 1.5 daje wyraźny sygnał do wprowadzenia układów zaprojektowanych specjalnie z myślą o wydajnej pracy na komputerze z dużą ilością informacji.
Klasy rozmiaru okna 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ć w projekcie nowe klasy rozmiarów okien, wywołaj funkcję z zestawu WindowSizeClass.BREAKPOINTS_V2 zamiast z zestawu WindowSizeClass.BREAKPOINTS_V1:
val currentWindowMetrics = WindowMetricsCalculator.getOrCreate() .computeCurrentWindowMetrics(LocalContext.current) val sizeClass = WindowSizeClass.BREAKPOINTS_V2 .computeWindowSizeClass(currentWindowMetrics)
Następnie zastosuj odpowiedni układ, gdy będziesz mieć 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 adaptacyjna Compose Material 3 pomaga tworzyć adaptacyjne interfejsy, które automatycznie dostosowują się do bieżących konfiguracji okna, takich jak klasy rozmiaru okna czy orientacja urządzenia.
Dobra wiadomość jest taka, że biblioteka jest już zaktualizowana o nowe punkty przerwania. Od wersji 1.2 (obecnie w fazie Release Candidate) domyślne dyrektywy szkieletu panelu obsługują klasy rozmiarów okien o dużej i bardzo dużej szerokości.
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. Dzięki temu układ użytkownika jest zachowywany podczas ponownego tworzenia procesu, co zapewnia większą stabilność i spójność. 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 dane WindowMetrics: możesz teraz obliczać dane WindowMetrics w kontekście aplikacji, a nie tylko w kontekście 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ć w projektach na Androida nowych klas rozmiarów Duży i Bardzo duży oraz innych funkcji w wersji 1.5, 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 błędów znajdziesz w oficjalnych informacjach o wersji.
Pozdrawiamy
Czytaj dalej
-
Wiadomości o usługach
Z przyjemnością informujemy o ważnym kroku w kierunku połączenia urządzeń mobilnych i komputerów stacjonarnych z Androidem: obsługa podłączonych wyświetlaczy jest już ogólnie dostępna w wersji Androida 16 QPR3.
Francesco Romano • Czas czytania: 7 minut
-
Wiadomości o usługach
Podczas konferencji Google I/O 2026 r. zaprezentowaliśmy zmianę w Androidzie, który z systemu operacyjnego stał się systemem opartym na AI. Pokazaliśmy też, jak możesz tworzyć inteligentne funkcje w systemie i wykorzystywać w swoich aplikacjach możliwości AI od Google.
Jingyu Shi • Czas czytania: 2 minuty
-
Wiadomości o usługach
Z przyjemnością informujemy, że na platformie Android XR pojawiła się oficjalna obsługa silników Unreal Engine i Godot. Wprowadzamy też nowe narzędzia, które zwiększą Twoją produktywność i umożliwią korzystanie z nowych funkcji XR: Android XR Engine Hub i Android XR Interaction Framework.
Luke Hopkins, Ryan Bartley • Czas czytania: 4 minuty
Bądź na bieżąco
Otrzymuj co tydzień najnowsze informacje o tworzeniu aplikacji na Androida na swoją skrzynkę odbiorczą.