Nous sommes heureux d'annoncer que Jetpack WindowManager 1.5.0 est désormais stable.
Cette version s'appuie sur la base solide d'adaptabilité de WindowManager, ce qui facilite encore plus la création d'interfaces utilisateur adaptatives et soignées qui s'affichent parfaitement sur toutes les tailles d'écran. L'écosystème Android continue de se développer, et les utilisateurs interagissent avec les applications sur une plus grande variété d'appareils que jamais : des téléphones aux pliables, en passant par les tablettes, les écrans connectés, les Chromebooks et même les écrans de voiture en mode stationnement.
WindowManager 1.5 se concentre sur la fourniture de meilleurs outils pour cet environnement d'appareils diversifié.
Nouveautés de WindowManager 1.5
Cette version stable introduit de nouveaux points d'arrêt pour les très grands écrans, améliore l'API d'intégration d'activité et offre plus de flexibilité pour calculer les métriques de fenêtre.
Nouvelles classes de taille de fenêtre : grande et très grande
La principale nouveauté de la version 1.5 est l'ajout de deux nouvelles classes de taille de fenêtre en largeur : grande et très grande.
Les classes de taille de fenêtre sont notre ensemble officiel et défini de points d'arrêt de fenêtre d'affichage qui vous aident à concevoir et à développer des mises en page adaptatives. Avec la version 1.5, nous étendons ces conseils aux écrans qui vont au-delà des tablettes classiques.
Voici les nouveaux points d'arrêt de largeur :
- Grande : pour les largeurs comprises entre 1 200 dp et 1 600 dp
- Très grande : pour les largeurs ≥ 1 600 dp
Les différentes classes de taille de fenêtre en fonction de la largeur de l'écran.
Pourquoi sont-elles importantes ?
À partir d'Android 16 QPR1 Beta 2, Android est compatible avec les écrans connectés, ce qui permet aux utilisateurs de connecter un écran externe à leur appareil et de le transformer en un outil de type ordinateur de bureau avec un grand écran.
Téléphone connecté à un écran externe, avec une session de bureau sur l'écran externe.
Avec cette nouvelle fonctionnalité disponible, il est essentiel de fournir des conseils définis pour inclure des écrans plus grands.
Sur ces très grandes surfaces, il n'est pas toujours optimal de simplement mettre à l'échelle la mise en page étendue d'une tablette. Par exemple, un client de messagerie peut afficher confortablement deux volets (une boîte aux lettres et un message) dans la classe de taille de fenêtre étendue. Toutefois, sur un moniteur de bureau très grand, le client de messagerie peut afficher élégamment trois ou même quatre volets : une boîte aux lettres, une liste de messages, le contenu complet du message et un panneau de calendrier/tâches, le tout en même temps.
En fournissant des points d'arrêt officiels pour les très grandes tailles d'écran, WindowManager 1.5 vous donne un signal clair pour introduire des mises en page spécialement conçues pour une expérience de bureau productive et riche en informations.
Les classes de taille de fenêtre peuvent être calculées à l'aide de computeWindowSizeClass(), qui est une fonction d'extension de la bibliothèque androidx.window.core.layout qui étend le type Set<WindowSizeClass>.
Pour inclure les nouvelles classes de taille de fenêtre dans votre projet, il vous suffit d'appeler la fonction à partir de l'ensemble WindowSizeClass.BREAKPOINTS_V2 au lieu de WindowSizeClass.BREAKPOINTS_V1 :
val currentWindowMetrics = WindowMetricsCalculator.getOrCreate() .computeCurrentWindowMetrics(LocalContext.current) val sizeClass = WindowSizeClass.BREAKPOINTS_V2 .computeWindowSizeClass(currentWindowMetrics)
Appliquez ensuite la mise en page appropriée lorsque vous êtes sûr que votre application dispose d'au moins cet espace :
if(sizeClass.isWidthAtLeastBreakpoint(
WindowSizeClass.WIDTH_DP_LARGE_LOWER_BOUND)){
...
// window is at least 1200 dp wide
}Bibliothèques adaptatives
La bibliothèque adaptative Compose Material 3 vous aide à créer des interfaces utilisateur adaptatives qui s'adaptent automatiquement en fonction des configurations de fenêtre actuelles, telles que les classes de taille de fenêtre ou les postures de l'appareil.
Bonne nouvelle : la bibliothèque est déjà à jour avec les nouveaux points d'arrêt. À partir de la version 1.2 (actuellement en version candidate), les fonctions de directive d'échafaudage de volet par défaut sont compatibles avec les classes de taille de fenêtre en largeur grande et très grande.
Il vous suffit d'activer cette fonctionnalité en déclarant dans votre fichier de build Gradle que vous souhaitez utiliser les nouveaux points d'arrêt :
currentWindowAdaptiveInfo( supportLargeAndXLargeWidth = true)
Améliorations supplémentaires
- Intégration d'activité : enregistrement et restauration automatiques : WindowManager peut désormais enregistrer et restaurer automatiquement l'état de vos divisions d'intégration d'activité. Cela permet de préserver la mise en page de l'utilisateur lors de la recréation du processus, ce qui offre une expérience plus stable et cohérente. Les développeurs n'ont plus besoin d'enregistrer et de restaurer l'état manuellement. Ils peuvent simplement activer la fonctionnalité automatique en définissant la propriété EmbeddingConfiguration#isAutoSaveEmbeddingState.
- WindowMetrics étendues : vous pouvez désormais calculer les métriques de fenêtre à partir d'un contexte d'application, et pas seulement d'un contexte d'activité. Cela offre plus de flexibilité pour accéder aux informations de la fenêtre à partir de différentes parties de votre application.
Premiers pas
Pour commencer à utiliser les nouvelles classes de taille grande et très grande, ainsi que d'autres fonctionnalités de la version 1.5 dans vos projets Android, mettez à jour les dépendances de votre application dans build.gradle.kts vers la dernière version stable :
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 est une nouvelle étape vers la création d'applications entièrement adaptatives qui s'exécutent sur tous les facteurs de forme Android. Consultez les notes de version officielles pour obtenir la liste complète des modifications et des corrections de bugs.
À vous de jouer !
Lire la suite
-
Nouveautés produit
Nous sommes heureux d'annoncer une étape importante dans le rapprochement de l'informatique mobile et de bureau sur Android : la compatibilité avec les écrans connectés est désormais en disponibilité générale avec la version Android 16 QPR3.
Francesco Romano • Temps de lecture : 7 min
-
Nouveautés produit
Lors de Google I/O 2026, nous avons présenté la transition d'Android d'un système d'exploitation à un système d'intelligence. Nous avons également montré comment créer des expériences intelligentes de manière native avec le système et intégrer la puissance de l'IA de Google dans vos applications.
Jingyu Shi • Temps de lecture : 2 min
-
Nouveautés produit
Nous sommes heureux d'annoncer que la compatibilité officielle avec Unreal Engine et Godot est désormais disponible pour Android XR. Nous lançons également de nouveaux outils conçus pour améliorer votre productivité et activer de nouvelles fonctionnalités XR : Android XR Engine Hub et Android XR Interaction Framework.
Luke Hopkins, Ryan Bartley • Temps de lecture : 4 min
Restez informé
Recevez chaque semaine les dernières informations sur le développement Android directement dans votre boîte de réception.