Si vous vous demandez comment modifier le format d'image des applications pour appareils pliables, vous êtes au bon endroit. Les téléphones portables et les tablettes pliables ont considérablement accru la diversité des tailles et des orientations.Et cela influe directement sur l'apparence de vos applications. Entre les nouvelles règles d'Android 16, les améliorations système et les bonnes pratiques de conception, il y a beaucoup de choses à prendre en compte pour que tout s'affiche parfaitement sur les écrans compacts, moyens et étendus.
L’image est claire : Android s'efforce de rendre toutes les applications redimensionnables et de respecter l'expérience des grands écrans. (Tablettes, mode bureau et écrans pliables internes). Il existe néanmoins des solutions pour ajuster le format d'image pour chaque application, effectuer des tests sur émulateurs, activer les comportements de compatibilité et, si nécessaire, créer des exceptions. Procédons étape par étape, sans détour.
Nouveautés d'Android 16 (API 36) : orientation, apparence et taille
Avec Android 16 (niveau d'API 36), le système peut ignorer les restrictions des applications concernant l'orientation, le format d'image et le redimensionnement sur les grands écrans. Ceci s'applique aux appareils dont la largeur minimale (sw) est ≥ 600 dptablettes, les écran interne de nombreux téléphones pliables et en mode fenêtre de bureau. L’objectif est d’offrir une expérience utilisateur cohérente sur les grands écrans, en respectant les préférences d’orientation et de taille de l’utilisateur lorsque l’espace le permet.
Dans les applications ciblant l'API 36, Les activités deviennent redimensionnables par défaut et peut passer en mode multi-fenêtres si l'appareil possède une résolution d'écran (sw) ≥ 600 dp (équivalente à resizeableActivity="true"). Concrètement, le système ignore plusieurs attributs qui imposaient auparavant un comportement fixe sur les grands écrans.
Attributs ignorés sur les grands écrans lors du ciblage de l'API 36
Si votre application cible Android 16, plusieurs indicateurs de manifeste et API associées sont ignorés dans les écrans sw ≥ 600dp. Parmi les attributs qui cessent d'être efficaces, on trouve : screenOrientation (portrait, paysage et variantes capteur/utilisateur), resizeableActivity, minAspectRatio, maxAspectRatio et appels comme setRequestedOrientation()/getRequestedOrientation() avec ces mêmes valeurs fixes.
Cette modification empêche une application d'être « bloquée » en mode portrait ou au format d'image étroit alors qu'il y a beaucoup plus d'espace pour afficher du contenu. L'idée est de privilégier les mises en page adaptatives et d'éviter les étirements ou les recadrages indésirables. qui frustrent les utilisateurs de grands écrans.
Exceptions : cas où ces modifications ne s'appliquent pas

Bien que le nouveau modèle soit plus strict concernant les grands écrans, il existe des exceptions. Ces paramètres ne s'appliquent pas aux écrans dont la résolution est inférieure à 600 dp. (De nombreux téléphones, dont certains pliables en mode externe), ainsi que les jeux (catégorie android:appCategory="game") sont exclus. De plus, si l'utilisateur active le comportement par défaut de l'application dans les options de format d'image, cette préférence est prioritaire.
Si vous publiez des jeux, Google Play peut vous aider à gérer les catégories d'applications. L'utilisation des Android App Bundles et de la signature d'applications Play offre des avantages supplémentaires en matière de distribution. Pour les applications non ludiques, l'important est de concevoir une interface utilisateur réactive et de laisser le système gérer l'affichage.
Comment désactiver un comportement dans l'API 36 et une notification pour l'API 37
Si, pour une raison valable, vous devez choisir de ne pas appliquer ce comportement dans l'API 36, Vous pouvez déclarer la propriété manifeste "android.window.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY". Définissez cette propriété dans une activité spécifique ou pour l'ensemble de l'application :
<activity ...>
<property
android:name="android.window.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY"
android:value="true" />
</activity>
<application ...>
<property
android:name="android.window.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY"
android:value="true" />
</application>
Attention à ceci : Le framework supprimera l'option de « désactivation » dans l'API 37En d'autres termes, pour les applications ciblant les écrans de 37 pouces ou plus, les restrictions d'orientation, de format d'image et de redimensionnement seront toujours ignorées sur les écrans avec un sw ≥ 600 dp.
Tests sur émulateurs et appareils : comment reproduire des cas réels
Pour savoir si votre application est concernée par ces changements, Utilisez les émulateurs Pixel Tablet et Pixel Fold dans Android StudioDéfinissez targetSdkPreview = "Baklava" dans le fichier build.gradle de votre module et observez comment votre interface utilisateur réagit aux changements d'orientation, de pliage/dépliage et de taille de la fenêtre.
Vous pouvez également activer le comportement de redimensionnement universel avec la marque de compatibilité UNIVERSAL_RESIZABLE_BY_DEFAULT sur vos appareils de test. De plus, pour les tests automatisés, les API de test d'Espresso et de Jetpack Compose vous permettent de valider des flux complets avec redimensionnement, rotation et mode multi-fenêtres.
Problèmes courants liés aux grands écrans et comment les éviter
Les applications liées à une orientation fixe, à un format d'image spécifique ou à une activité non redimensionnable ont tendance à souffrir sous Android 16 : éléments étirés, chevauchements, boutons hors de la fenêtre d'affichage et des erreurs de caméra dans les aperçus. La solution réside dans l'adoption d'une conception adaptative.
- Évitez les composants étirés : Ajoutez des largeurs maximales pour éviter qu'une carte, une barre d'outils ou une image ne prenne trop de place horizontalement.
- Activer le défilement lorsque cela est approprié : s'il n'y a pas de déplacement, L'utilisateur risque de perdre des commandes vitales lors du passage en mode paysage.
- Manipulez l'appareil photo avec précaution dans les deux orientations : Réglez le viseur et la rotation par rapport au capteur ; ne présumez pas d’un rapport d’aspect fixe.
- Préserve l'état lors du redimensionnement : L'activité peut être recréée ; elle conserve les données saisies dans le formulaire et le contexte de l'utilisateur.
- Utilisez les classes de taille de fenêtre : Réfléchissez en termes de catégories de taille et en Des aménagements adaptatifs qui s'ajustent à l'espace..
L'avis de l'utilisateur : « Mes applications ont un aspect bizarre sur le Fold »
Si vous utilisez un appareil pliable comme Pli de la galaxie Et si vous remarquez sur Instagram ou Reddit des images trop exagérées ou étirées, vous n'êtes pas seul. C'est un symptôme des applications qui ne sont pas optimisées pour les grands écrans. ou avec une mise à l'échelle forcée. De plus, dans les jeux, certains titres n'exploitent toujours pas correctement l'espace et sont visuellement médiocres.
Existe-t-il des paramètres de réglage ? Chez de nombreux fabricants, il est possible de forcer le mode plein écran pour chaque application. Toutefois, si une application n'est pas adaptée, le résultat peut être sous-optimal.Dans l'idéal, le développeur devrait adopter des mises en page adaptatives ; en tant qu'utilisateur, consultez Paramètres > Affichage > Applications plein écran (ou Mise à l'échelle des applications) pour gérer chaque application.
Paramètres système utiles : format d’image par application et densité
Dans les surcouches Android de différents fabricants, vous trouverez des options permettant d'exécuter certaines applications en plein écran ou dans un format d'image spécifique. Chemin d'accès habituel : Paramètres > Affichage > Mise à l'échelle des applications / Applications en plein écranActivez-la via l'application et vérifiez le résultat.
Si le contenu ne correspond toujours pas, Vous pouvez modifier la densité (largeur minimale) dans les options pour développeurs.Activez le mode développeur en appuyant sept fois sur le numéro de build (Paramètres > Système > À propos du téléphone), accédez aux options pour les développeurs et ajustez la « Largeur minimale » : une valeur plus basse agrandit les éléments, une valeur plus élevée les réduit. Procédez étape par étape et notez la valeur initiale.
Pour les écrans incurvés, certains systèmes comprennent « Ignorer les contacts aléatoires sur les bords » ou « Protection contre les appuis accidentels ». La zone concernée est personnalisable sur certains appareils (par exemple, sur certains modèles Xiaomi). Elle ne modifie pas le format d'image, mais réduit les appuis fantômes lors du test des paramètres.
Conception adaptative et réactive : classes de taille de fenêtre
Jetpack Compose offre des outils parfaits pour les interfaces utilisateur qui s'adaptent sans se rompre. Les classes de taille de fenêtre (Material 3) simplifient la logique Dissocier la mise en page des dimensions physiques de l'écran. Classer les écrans en trois catégories (Compact, Moyen et Étendu) selon leur largeur et leur hauteur, et adapter l'interface utilisateur en conséquence.
Dans le composant racine, vous pouvez obtenir la classe de taille et la propager en tant qu'état. Évitez les décisions de conception basées sur la question « Est-ce une tablette ? » ou sur un format d'image fixe.L'application peut fonctionner en mode multi-fenêtres, dans un segment d'écran ou sur un moniteur externe.
Pour les composants internes, utilisez leur largeur de rendu réelle. BoxWithConstraints vous permet de modifier ce qui est affiché en fonction de l'espace disponible. (par exemple, passer d'une mise en page en colonnes à une mise en page en lignes avec des détails), en supposant le coût de la composition différée dans la phase de mise en page.
Tout le contenu est disponible, en permanence.
Si un composant affiche plus de détails lorsqu'il y a suffisamment de largeur, Ne chargez pas les données « en fonction » de la tailleTransmettez toujours ces informations (par exemple, imageUrl, title, description) et déterminez dans l'élément composable quelles parties sont visibles. Cela évite les effets indésirables lors du redimensionnement et préserve l'état.
Lorsque la mise en page change (d'une à deux colonnes, ou inversement), il est conseillé de placer les indicateurs d'état tels que showMore au niveau supérieur. Cela préserve l'intention de l'utilisateur même si la mise en page change.Dans Compose, n'oubliez pas que rememberSaveable permet de conserver l'état lors des recréations d'activité.
Manifeste et restrictions bloquant le redimensionnement
Si votre application ne se redimensionne pas ou reste bloquée dans un format d'image spécifique, vérifiez le fichier AndroidManifest.xml. Supprimez android:maxAspectRatio, android:resizeableActivity="false" et l'orientation d'écran fixe. Si vous optimisez pour les grands écrans ou les formats libres, l'API 36 sera peu utile sur les tailles de logiciel ≥ 600 dp car le système les ignorera.
Pour les applications existantes, cette étape est essentielle : laisser la fenêtre s'agrandir et se rétrécir Il s'agit du premier filtre majeur permettant de garantir une bonne réactivité de votre interface utilisateur en mode bureau, en mode écran partagé ou lors du dépliage d'un écran pliable.
Modifications de configuration et cycle de vie
Lors du changement de taille de la fenêtre, La configuration est mise à jour. (Largeur/hauteur, orientation, rapport hauteur/largeur). Dans les vues classiques, vous pouvez le constater avec l'événement onConfigurationChanged ; dans Compose, LocalConfiguration.current reflète automatiquement ces modifications.
Vous remarquerez également des implications liées au cycle de vie. Depuis l'API 24, seules les modifications de taille importantes recréent l'activité.Cependant, cela peut arriver. Enregistrez les événements avec un LifecycleEventObserver et vérifiez quand l'activité est détruite/créée. Si vous connectez un moniteur externe ou si la densité d'images change, elle peut également être recréée.
Continuité de l'État et travaux de fond
Pour préserver l'état de l'interface utilisateur contre les recréations, Utilisez rememberSaveable au lieu de remember lorsque l'état doit survivre aux changements de configuration. Et il élève l'état au ViewModel pour une véritable continuité entre les recréations, évitant ainsi une duplication coûteuse des ressources.
Si l'initialisation est déclenchée dans onCreate(), elle peut être répétée. Déplacez l'initialisation dans la méthode init du ViewModel. afin qu'elle ne s'exécute qu'une seule fois par cycle de vie du ViewModel. Ceci est particulièrement important en cas d'appels réseau ou d'opérations d'E/S importantes.
Conception web pour livres pliables : CSS, API et performances
Pour les sites web, les choses fonctionnent en parallèle. Les supports pliables nécessitent des requêtes média plus précises.Pas seulement des points de rupture classiques. Combinez les largeurs minimale et maximale avec le format d'image pour des scénarios comme le 3:4 (portrait plié) ou le 16:9 (paysage). Réorganisez les menus, les grilles et les images en fonction de l'espace disponible.
@media (min-width: 600px) and (max-width: 900px) {
/* Pantallas intermedias: plegable semiabierto */
}
@media (aspect-ratio: 3/4) {
/* Vertical plegado */
}
@media (aspect-ratio: 16/9) {
/* Apaisado desplegado */
}
L'API Window Segments permet de détecter segments d'écran actifs Dans les environnements multi-panneaux, il gère également l'adaptation à la fenêtre d'affichage : il couvre les coins arrondis ou les découpes et détecte l'orientation via JS pour ajuster l'interface utilisateur sans scintillement. Optimiser les performances avec chargement différé et compression pour les scénarios multitâches typiques d'un appareil pliable.
if (window.screenSegments) {
const segments = window.screenSegments;
console.log(segments);
}
/* CSS */
body { /* iOS/entornos compatibles */
viewport-fit: cover;
}
/* JS */
if (screen.orientation.type === 'landscape-primary') {
console.log('Modo apaisado');
}
Classes de taille : seuils recommandés et exemples
Google recommande trois plages de largeur/hauteur en dp qui conviennent parfaitement aux téléphones portables, aux appareils pliables et aux tablettes. Compact (0–599 dp), Moyen (600–839 dp), Étendu (840+ dp). Un téléphone portable pliable En orientation verticale, il peut rester en mode Moyen ; lorsqu'il est déployé horizontalement, il devient généralement en mode Étendu.
Partant de ce constat, Vous pouvez remplacer les listes par des grilles à 2 ou 3 colonnes. Lorsque l'espace le permet, augmentez la taille de la police en mode étendu, tout en conservant une lisibilité optimale en mode compact. Material 3 fournit la classe `material3-window-size-class` pour calculer cela avec précision (notez qu'elle peut être en phase expérimentale et nécessite l'activation de cette fonctionnalité).
Pratiques d'interface utilisateur : composants réutilisables et logique en couches
Une bonne pratique consiste à centraliser la logique de dimensionnement en un seul point (par exemple, l'élément composable racine) et passer un état dérivé au reste. Cela empêche les éléments composables internes de dépendre implicitement d'une taille d'écran globale ; cela les rendra plus réutilisables et testables.
Pour une liste adaptative avec détails, décidez au niveau supérieur s'il faut l'afficher. un ou deux panneaux selon la largeurLaissez les enfants se concentrer sur le contenu. Si une carte affiche des informations supplémentaires lorsqu'il y a plus d'espace, utilisez BoxWithConstraints ou des modificateurs, mais ne limitez pas l'élément à un emplacement ou une taille fixe.
Mode bureau et multi-fenêtres : préparez-vous à passer à l’étape suivante
Sur ChromeOS et bureau AndroidLa fenêtre se redimensionne comme dans un système d'exploitation PC. Votre application doit s'adapter aux changements de taille fréquents. et conserver son état, sans être limité par une orientation fixe ou un format d'image statique. Les émulateurs et les ateliers de programmation de Google sont un excellent moyen de tester tout cela méthodiquement.
C'est un environnement idéal pour valider votre application Il n'y a pas de recalcul ni de surfacturation. Lors du redimensionnement, les transitions de mise en page doivent être fluides. Si l'utilisateur réduit la fenêtre puis la rouvre, l'application doit reprendre son fonctionnement sans perte de contexte.
Calendrier et exigences de publication
Android 16 établit une nouvelle référence : Compatibilité avec toutes les orientations, tous les formats d'image et le redimensionnement sur les écrans ≥ 600 ppp pour les applications qui ciblent l'API 36 (avec la possibilité de la désactiver dans la version 36, mais pas dans la version 37).
Les délais varient selon les magasins, mais Google Play exigera l'API cible 36 à partir d'août 2026.Si vous avez encore des restrictions strictes, il est temps de planifier la migration pour éviter les surprises et, surtout, améliorer l'expérience sur les grands écrans.
Ressources et tests recommandés
Pour s'exercer, Google propose des ateliers de programmation axés sur le redimensionnement : observer la configuration locale, enregistrer le cycle de vieIl modifie les restrictions du manifeste et active rememberSaveable. Les applications d'exemple Reply, JetNews et CanonicalLayouts présentent des modèles validés pour les grands écrans.
Pour les équipes web, Outils de développement Chrome, BrowserStack et laboratoire de test à distance Samsung Ils facilitent les tests en mode plié/déplié. Et si vous travaillez avec Android natif, les émulateurs Pixel Tablet/Fold et le framework de compatibilité UNIVERSAL_RESIZABLE_BY_DEFAULT sont votre terrain de jeu.
Note à la communauté : attentes et réalité
De nombreux utilisateurs d'ordinateurs portables pliables font remarquer que Ils doivent corriger le problème application par application. Le changement de taille est perceptible, et certains jeux sont moins beaux. C'est compréhensible dans le cadre d'une transition d'écosystème, mais Android 16 et ses pratiques de conception adaptative ont permis aux applications de s'améliorer. exploiter pleinement les grands écransPlus tôt vous migrerez, plus tôt les plaintes concernant les étirements et les coupures cesseront.
Si, malgré tout, vous estimez que votre appareil ne vous offre pas l'expérience attendue, il existe des options pour racheter et revendre des appareils d'occasion. Le contenu original mentionnait des services comme Moviloff. Transformez votre ancien téléphone portable en argent et offrez-lui une seconde vie, tout en préservant l'environnement. Ce n'est pas une solution technique, mais elle pourrait vous intéresser si vous envisagez d'acheter un nouvel appareil.
La maîtrise du format d'image et du redimensionnement dans les applications pliables nécessite l'acceptation du nouveau modèle : Laissez le système gérer les grandes fenêtres, créer des interfaces utilisateur réactives, préserver l'état et tester dans des scénarios réels.Avec Android 16 qui pousse en faveur (et Android 37 qui met fin aux restrictions sur les grands écrans), la voie est claire : adopter les classes de taille de fenêtre, nettoyer le manifeste, éviter les composants étirés, activer le défilement, prendre soin de la caméra dans les deux orientations et mesurer les performances.
Pour des ajustements immédiats, utilisez les options système comme le mode plein écran et, avec précaution, le paramètre « Largeur minimale ». Les utilisateurs constateront la différence instantanément : un contenu plus visible, une distorsion réduite et une expérience digne d’un grand écran. Partagez cette information et davantage d'utilisateurs sauront comment modifier le format d'image sur leur téléphone portable..