Compatibilité avec les tablettes et les grands écrans

Android 13 améliore encore Android sur les grands écrans

Android 13 s'appuie sur les optimisations pour tablettes introduites dans Android 12 et la mise à jour groupée 12L, y compris les optimisations pour l'UI du système, le multitâche amélioré, et les modes de compatibilité améliorés. Lors de vos tests, assurez-vous que vos applications s'affichent de manière optimale sur les tablettes et autres appareils à grand écran.

Pour commencer, configurez un appareil virtuel pour Android Emulator dans Android Studio ou obtenez Android 13 sur un appareil à grand écran auprès de nos partenaires fabricants d'appareils.

Si vous débutez dans le développement pour les grands écrans, consultez les guides Grands écrans et Appareils pliables pour obtenir les dernières consignes et techniques permettant de créer des expériences optimales sur ces appareils.

Voici un aperçu des nouveautés et quelques idées sur ce que vous pouvez tester dans votre application.

Un système d'exploitation optimisé pour les grands écrans

L'UI du système est désormais plus esthétique et plus facile à utiliser sur les grands écrans, que ce soit pour les notifications, les réglages rapides, l'écran de verrouillage, l'aperçu, l'écran d'accueil, etc.

Sur les grands écrans, le volet de notifications exploite l'espace en affichant les réglages rapides et les notifications dans une nouvelle mise en page à deux colonnes. L'écran de verrouillage utilise aussi une mise en page plus grande en deux colonnes qui met en avant les notifications et l'horloge. Les applications système, telles que Paramètres, sont également optimisées.

Les mises en page pour les grands écrans affichent plus de contenu dans une mise en page à deux colonnes.

D'autres modifications visent à faciliter les interactions clés sur les grands écrans. Par exemple, sur les tablettes, les commandes du schéma de déverrouillage et du code se trouvent désormais sur le côté de l'écran pour en simplifier l'accès. De plus, il vous suffit d'appuyer sur l'autre côté de l'écran pour que ces commandes y soient transférées.

Pour les appareils pliables, le système optimise la grille de l'écran d'accueil et améliore la transition entre l'état plié et déplié. Les utilisateurs peuvent ainsi passer facilement d'un seul écran extérieur à l'écran déplié plus grand, ce qui renforce la continuité tout en préservant leurs choix.

Pour les développeurs : modification de la projection multimédia

Depuis la version 12L, lorsque l'écran virtuel est affiché sur la surface, sa taille est adaptée à la surface grâce à un processus semblable à l' centerInside option de ImageView.

Cette nouvelle approche de mise à l'échelle, qui améliore la diffusion de contenu sur les écrans de télévision et autres grands écrans, maximise la taille d'image de la surface, tout en garantissant des proportions correctes.

Pour en savoir plus, consultez la section Projection multimédia sur les grands écrans.

Multitâche puissant et intuitif

Les utilisateurs effectuent souvent plusieurs tâches à la fois lorsqu'ils utilisent les grands écrans des tablettes, des Chromebooks et des appareils pliables. De nouvelles fonctionnalités de productivité rendent le multitâche encore plus puissant et intuitif.

Une nouvelle barre des tâches permet de lancer et de changer d'application plus facilement. Les gestes rendent l'utilisation de la barre des tâches encore plus rapide, avec le glisser-déposer pour passer en mode Écran partagé et le balayage vers le haut pour revenir à l'écran d'accueil. Dans la navigation par gestes, un geste de changement rapide permet aux utilisateurs de parcourir les applications récentes. Les utilisateurs peuvent afficher ou masquer la barre des tâches à tout moment en appuyant de manière prolongée.

La barre des tâches permet aux utilisateurs de lancer et de changer d'application plus rapidement, de glisser-déposer pour passer en mode Écran partagé et de balayer vers le haut pour revenir à l'écran d'accueil.

L'exécution d'applications en mode Écran partagé est une façon courante d'effectuer plusieurs tâches à la fois. Ce mode est désormais plus facile à découvrir et à utiliser. Les utilisateurs peuvent désormais glisser-déposer leurs applications préférées dans l'écran partagé directement depuis la barre des tâches. Ils peuvent également utiliser une nouvelle action "Diviser" dans l'aperçu pour démarrer le mode Écran partagé en un seul geste.

Pour offrir une expérience plus cohérente aux utilisateurs, Android 12 et versions ultérieures permettent à toutes les applications de passer en mode multifenêtre, qu'elles soient redimensionnables ou non.

Pour les développeurs : testez vos applications en mode Écran partagé

Le mode Écran partagé étant plus accessible et Android 12 permettant aux utilisateurs de lancer toutes les applications en mode Écran partagé, nous vous recommandons vivement de tester vos applications dans ce mode.

Pour les développeurs : gérez les modifications dynamiques des tailles d'encart

La nouvelle barre des tâches est signalée aux applications comme un encart, même si aucune nouvelle API d'encart n'a été introduite.

Lorsqu'elle est utilisée avec la navigation par gestes, la barre des tâches peut être affichée ou masquée de façon dynamique. Si votre application utilise déjà les informations d'encart pour dessiner son UI, elle doit tenir compte de la possibilité que la taille de l'encart change lorsque l'application est en état de reprise. Dans ce cas, votre application doit appeler setOnApplyWindowInsetsListener et gérer les modifications des dimensions de l'encart comme décrit dans la section Encarts des barres système.

Expérience de compatibilité améliorée

De nombreuses applications sont déjà optimisées pour les appareils à grand écran et offrent une expérience optimale grâce à des mises en page responsives, la compatibilité avec le mode multifenêtre mode, la continuité entre les changements de taille d'écran et de position de l'appareil, et bien plus encore.

Pour les applications qui ne sont pas encore optimisées, le système inclut des améliorations visuelles et de stabilité pour le mode de compatibilité afin d'offrir une meilleure expérience aux utilisateurs et d'améliorer l'apparence de ces applications par défaut.

Les améliorations du mode de compatibilité offrent une meilleure expérience utilisateur pour les applications qui ne sont pas optimisées pour les grands écrans.

Pour améliorer l'UI du format letterbox, les fabricants d'appareils peuvent personnaliser un certain nombre d'options via des configurations de superposition. Par exemple, les fabricants d'appareils peuvent désormais configurer le format de l'application, appliquer des angles arrondis à la fenêtre de l'application et définir la transparence de la barre d'état.

Pour les développeurs : vérifiez vos applications en mode de compatibilité

Si votre application n'est pas encore optimisée pour s'adapter aux changements de taille d'écran et de position de l'appareil, elle peut être lancée en mode de compatibilité. Nous vous recommandons de tester votre application avec les modes de compatibilité pour vous assurer qu'elle s'affiche et fonctionne correctement.

Pour en savoir plus, consultez la section Amélioration de l'application du format letterbox.

Refus de la paume de la main amélioré

Les grands écrans sont des surfaces idéales pour la saisie au stylet. Toutefois, lorsque les utilisateurs dessinent, écrivent, ou interagissent avec votre application à l'aide d'un stylet, ils touchent parfois l'écran avec la paume de la main. L'événement tactile peut être signalé à votre application avant que le système ne le reconnaisse et l'ignore comme une pression involontaire de la paume de la main.

Avant Android 13 (niveau d'API 33), le système annulait les événements tactiles de la paume de la main en envoyant un MotionEvent avec ACTION_CANCEL. Android 13 améliore l'identification du refus de la paume de la main en ajoutant FLAG_CANCELED à l' objet d'événement de mouvement.

Si une pression via la paume de la main est le seul pointeur d'événement tactile, le système annule l'événement en définissant ACTION_CANCEL et FLAG_CANCELED sur l'objet d'événement de mouvement. Si les autres pointeurs impliquent une pression, Android 13 définit ACTION_POINTER_UP et FLAG_CANCELED.

Pour les développeurs : mettez à jour vos écouteurs et gestionnaires d'événements tactiles

Sur Android 12 (niveau d'API 32) et versions antérieures, la détection du refus de la paume de la main n'est possible que pour les événements tactiles à un seul pointeur. Si une pression via la paume de la main est le seul pointeur, le système annule l'événement en définissant ACTION_CANCEL sur l'objet d'événement de mouvement. Si les autres pointeurs impliquent une pression, le système définit ACTION_POINTER_UP, ce qui est insuffisant pour détecter le refus de la paume de la main. Dans les deux cas, FLAG_CANCELED n'est pas défini.

Pour Android 13, mettez à jour vos écouteurs et gestionnaires d’événements tactiles afin de vérifier la présence de FLAG_CANCELED lors de la réception de ACTION_POINTER_UP pour vous assurer que le refus de la paume de la main et les autres événements annulés sont détectés et gérés.

Plus de mises à jour et de ressources pour les grands écrans

Modifications apportées à Google Play sur les grands écrans

Pour permettre aux utilisateurs de trouver plus facilement les meilleures expériences d'application sur leurs tablettes, appareils pliables et appareils ChromeOS, Google Play a été modifié pour mettre en avant les applications optimisées pour leurs appareils.

De nouvelles vérifications ont été ajoutées pour évaluer la qualité de chaque application par rapport à nos consignes relatives à la qualité des applications sur les grands écrans. L'objectif est de s'assurer que Google Play propose les meilleures applications possibles sur ces appareils. Lorsqu' une application n'est pas optimisée pour les grands écrans, les utilisateurs de grands écrans voient désormais une notification sur la page de fiche Play Store de l'application pour les aider à trouver les applications qui fonctionneront le mieux sur leur appareil.

Play introduit également des notes d'application spécifiques aux grands écrans, comme annoncé pour la première fois en août 2021, afin que les utilisateurs puissent évaluer le fonctionnement de votre application sur leurs appareils à grand écran.

Intégration d'activités avec Jetpack WindowManager

L'intégration d'activités vous permet de profiter de la zone d'affichage supplémentaire des grands écrans en affichant plusieurs activités à la fois, par exemple pour le modèle Liste-Détails . Elle nécessite peu ou pas de refactorisation de votre application. Il vous suffit de créer un fichier de configuration XML ou d'effectuer des appels d'API Jetpack WindowManager pour déterminer la manière dont votre application affichera ses activités (côte à côte ou empilées les unes sur les autres). Le système gère le reste et détermine la présentation en fonction de la configuration que vous avez créée. Si votre application utilise plusieurs activités, nous vous recommandons d'essayer l'intégration d'activités. Pour en savoir plus, consultez la section Intégration d'activités.

Demande d'orientation de l'appareil

Contrairement aux téléphones standards, les appareils pliables et les tablettes sont fréquemment utilisés en mode paysage et portrait. Les tablettes sont souvent ancrées en position paysage, tandis que les appareils pliables peuvent être orientés en fonction de leur pli.

Certaines applications demandent une orientation fixe en mode portrait ou paysage et s'attendent à rester dans leur orientation préférée, quelle que soit l'orientation de l' appareil (voir l' screenOrientation attribut de manifeste). Bien que cette fonctionnalité soit toujours prise en charge, les fabricants d'appareils ont la possibilité de remplacer la demande d'orientation préférée de l'application.

Sous Android 12 (niveau d'API 31) ou version ultérieure, les fabricants d'appareils peuvent configurer des écrans d'appareil individuels (comme l'écran de tablette d'un pliable) afin qu'ils ignorent la spécification d'orientation. Ils peuvent également forcer une application en mode portrait à s'afficher à la verticale, mais au format letterbox sur les écrans en mode paysage. En ignorant la spécification, Android peut mieux servir l'intention du développeur de toujours présenter une application dans un format fixe tout en conservant l'orientation de l'application pour une utilisation optimale.

Toutefois, pour une expérience utilisateur optimale, concevez vos applications avec des mises en page responsives qui utilisent pleinement l'espace d'écran disponible en mode portrait et paysage sur les écrans de plus de 600 dp.

Obtenir Android 13 sur un appareil partenaire à grand écran

Nous avons collaboré avec nos partenaires fabricants d'appareils pour rendre Android 13 disponible à l'essai sur les appareils à grand écran. Consultez les sites suivants pour obtenir la liste des appareils à grand écran éligibles et connaître les versions bêta disponibles.

Pour obtenir des mises à jour et de l'assistance, consultez les ressources que chaque fabricant d'appareils a liées sur son site de la bêta d'Android 13. Notez que chaque partenaire vous fournira directement les mises à jour de la bêta et gérera ses propres inscriptions et son assistance.

Que faut-il tester ?

Avant de commencer les tests, configurez un appareil virtuel pour Android Emulator dans Android Studio ou obtenez Android 13 sur un appareil à grand écran auprès de nos partenaires fabricants d'appareils. Une fois la configuration de votre appareil terminée, vous devrez tester votre application avec certains cas d'utilisation courants sur grand écran pour vous assurer qu'elle répond comme vous le souhaitez. Voici quelques domaines recommandés, avec des liens vers plus d'informations sur les ressources associées qui peuvent vous aider à optimiser votre application pour les grands écrans :

Que faut-il tester ? Ressources
Tailles d'écran, position de l'appareil et rotation

Vérifiez comment votre application réagit lorsque la taille de l'écran change en raison de modifications de la position de l'appareil (par exemple, lorsqu'un appareil pliable est déplié ou placé en mode tablette). Essayez également de faire pivoter l'appareil dans chacun de ces états pour vous assurer que votre application répond de manière optimale.

Dokumentation Exemples Ateliers de programmation Conférences techniques
Interaction avec la barre des tâches et mode Écran partagé

Vérifiez comment votre application réagit lorsqu'elle est affichée avec la barre des tâches sur les grands écrans. Vérifiez que l'UI de votre application n'est pas coupée ni bloquée par la barre des tâches, essayez de passer en mode Écran partagé et multifenêtre et d'en sortir à l'aide de la barre des tâches, et testez le passage rapide entre votre application et d'autres applications à l'aide de la barre des tâches.

Si votre application a une orientation fixe et n'est pas redimensionnable, vérifiez comment votre application réagit aux ajustements du mode de compatibilité, tels que le format letterbox.

Dokumentation Exemples Conférences techniques
Mode multifenêtre

Vérifiez comment votre application réagit lorsqu'elle s'exécute en mode multifenêtre sur les grands écrans (SW >= 600 dp), en particulier si elle définit resizeableActivity="false".

Si votre application définit resizeableActivity="true", assurez-vous également de vérifier comment elle réagit lorsqu'elle s'exécute en mode multifenêtre sur les petits écrans (SW < 600 dp).

Si votre application utilise des API d'affichage telles que Display.getRealSize() et Display.getRealMetrics(), utilisez plutôt les API WindowMetrics dans la bibliothèque Jetpack WindowManager.

Dokumentation Exemples Conférences techniques
Projection multimédia

Si votre application utilise la projection multimédia, vérifiez comment elle réagit lors de la lecture, de la diffusion ou de la projection de contenus multimédias sur des appareils à grand écran. Tenez également compte des changements de position de l'appareil sur les appareils pliables.

Dokumentation Exemples Conférences techniques
Aperçu de l'appareil photo

Pour les applications d'appareil photo, vérifiez comment l'UI de l'aperçu de l'appareil photo réagit sur les grands écrans lorsque votre application est limitée à une partie de l'écran en mode multifenêtre ou Écran partagé. Vérifiez également comment votre application réagit lorsque la position d'un appareil pliable change.

Dokumentation