Dengan senang hati kami mengumumkan bahwa Jetpack WindowManager 1.5.0 kini sudah stabil.
Rilis ini dibangun berdasarkan fondasi adaptasi yang kuat di WindowManager, sehingga memudahkan pembuatan UI adaptif yang rapi dan terlihat bagus di semua ukuran layar. Seiring dengan terus berkembangnya ekosistem Android, pengguna berinteraksi dengan aplikasi di berbagai perangkat yang lebih luas dari sebelumnya: mulai dari ponsel dan perangkat foldable hingga tablet, layar terhubung, Chromebook, dan bahkan layar mobil dalam mode parkir.
WindowManager 1.5 berfokus pada penyediaan alat yang lebih baik untuk lingkungan perangkat yang beragam ini.
Yang baru di WindowManager 1.5
Rilis stabil ini memperkenalkan titik henti sementara baru untuk layar yang sangat besar, meningkatkan API penyematan aktivitas, dan memberikan lebih banyak fleksibilitas untuk menghitung metrik jendela.
Class ukuran jendela baru: Besar dan Sangat besar
Update terbesar di 1.5 adalah penambahan dua class ukuran jendela lebar baru: Besar dan Sangat besar.
Class ukuran jendela adalah kumpulan titik henti sementara area pandang resmi dan tidak berubah yang membantu Anda mendesain dan mengembangkan tata letak adaptif. Dengan 1.5, kami memperluas panduan ini untuk layar yang lebih besar dari tablet biasa.
Berikut titik henti sementara lebar baru:
- Besar: Untuk lebar antara 1200dp dan 1600dp
- Sangat besar: Untuk lebar ≥1600dp
Class ukuran jendela yang berbeda berdasarkan lebar layar.
Mengapa hal ini penting?
Mulai dari Android 16 QPR1 Beta 2, Android mendukung layar terhubung, sehingga pengguna dapat melampirkan layar eksternal ke perangkat mereka dan mengubahnya menjadi alat seperti desktop dengan layar besar.
Ponsel terhubung ke layar eksternal, dengan sesi desktop di layar eksternal.
Dengan ketersediaan fitur baru ini, panduan yang tidak berubah untuk menyertakan layar yang lebih besar sangat penting.
Di layar yang sangat besar ini, hanya meningkatkan skala tata letak Diperluas tablet tidak selalu memberikan pengalaman pengguna terbaik. Misalnya, klien email dapat menampilkan dua panel (kotak masuk dan pesan) dengan nyaman di class ukuran jendela Diperluas. Namun, di monitor desktop Sangat besar, klien email dapat menampilkan tiga atau bahkan empat panel dengan elegan —mungkin kotak masuk, daftar pesan, konten pesan lengkap, dan panel kalender/tugas, semuanya sekaligus.
Dengan menyediakan titik henti sementara resmi untuk ukuran layar yang sangat besar, WindowManager 1.5 memberi Anda sinyal yang jelas untuk memperkenalkan tata letak yang dirancang khusus untuk pengalaman desktop yang produktif dan padat informasi.
Class ukuran jendela dapat dihitung menggunakan computeWindowSizeClass(), yang merupakan fungsi ekstensi library androidx.window.core.layout yang memperluas jenis Set<WindowSizeClass>.
Untuk menyertakan class ukuran jendela baru dalam project Anda, cukup panggil fungsi dari set WindowSizeClass.BREAKPOINTS_V2, bukan WindowSizeClass.BREAKPOINTS_V1:
val currentWindowMetrics = WindowMetricsCalculator.getOrCreate() .computeCurrentWindowMetrics(LocalContext.current) val sizeClass = WindowSizeClass.BREAKPOINTS_V2 .computeWindowSizeClass(currentWindowMetrics)
Kemudian, terapkan tata letak yang benar jika Anda yakin aplikasi Anda memiliki ruang yang cukup:
if(sizeClass.isWidthAtLeastBreakpoint(
WindowSizeClass.WIDTH_DP_LARGE_LOWER_BOUND)){
...
// window is at least 1200 dp wide
}
Library adaptif
Library Adaptif Material 3 Compose membantu Anda membuat UI adaptif yang menyesuaikan diri secara otomatis sesuai dengan konfigurasi jendela saat ini seperti class ukuran jendela atau postur perangkat.
Kabar baiknya adalah library ini sudah diperbarui dengan titik henti sementara baru. Mulai dari versi 1.2 (sekarang dalam tahap Kandidat Rilis), fungsi direktif scaffold panel default mendukung class ukuran lebar jendela Besar dan Sangat besar.
Anda hanya perlu ikut serta dengan mendeklarasikan dalam file build Gradle bahwa Anda ingin menggunakan titik henti sementara baru:
currentWindowAdaptiveInfo( supportLargeAndXLargeWidth = true)
Peningkatan tambahan
- Penyematan aktivitas — penyimpanan dan pemulihan otomatis: WindowManager kini dapat menyimpan dan memulihkan status pemisahan penyematan aktivitas Anda secara otomatis. Hal ini membantu mempertahankan tata letak pengguna di seluruh pembuatan ulang proses, sehingga menghasilkan pengalaman yang lebih stabil dan konsisten. Developer tidak perlu lagi menyimpan dan memulihkan status secara manual, tetapi mereka dapat memilih untuk ikut serta secara otomatis dengan menetapkan properti EmbeddingConfiguration#isAutoSaveEmbeddingState.
- WindowMetrics yang Diperluas: Sekarang Anda dapat menghitung WindowMetrics dari konteks Aplikasi, bukan hanya konteks Aktivitas. Hal ini memberikan lebih banyak fleksibilitas untuk mengakses informasi jendela dari berbagai bagian aplikasi Anda.
Cara memulai
Untuk mulai menggunakan class ukuran Besar dan Sangat besar yang baru serta fitur 1.5 lainnya dalam project Android Anda, perbarui dependensi aplikasi Anda di build.gradle.kts ke versi stabil terbaru:
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 adalah langkah maju lainnya untuk membuat aplikasi yang sepenuhnya adaptif dan berjalan di seluruh faktor bentuk Android. Lihat catatan rilis resmi untuk mengetahui daftar lengkap perubahan dan perbaikan bug.
Selamat membuat kode!
Lanjutkan membaca
-
Berita Produk
Dengan senang hati kami mengumumkan pencapaian besar dalam menyatukan komputasi seluler dan desktop di Android: dukungan layar terhubung telah mencapai ketersediaan umum dengan rilis Android 16 QPR3.
Francesco Romano • Waktu baca: 7 menit
-
Berita Produk
Ekosistem seluler selalu berkembang, sehingga menghadirkan peluang dan ancaman baru. Melalui perubahan ini, Android dan Google Play tetap berkomitmen untuk memastikan miliaran pengguna dapat terus menikmati aplikasi mereka dengan percaya diri dan inovasi developer dapat berkembang.
Vijaya Kaza • Waktu baca: 3 menit
-
Berita Produk
Rilis Jetpack Compose April ‘26 sudah stabil. Rilis ini berisi modul Compose inti versi 1.11 (lihat pemetaan BOM lengkap), alat debug elemen bersama, peristiwa trackpad, dan lainnya.
Meghan Mehta • Waktu baca: 5 menit
Terus dapatkan informasi
Dapatkan insight pengembangan Android terbaru yang dikirim ke kotak masuk Anda setiap minggu.