3 votes

Les applications apparaissent comme des écrans blancs vides dans la liste des applications récentes en orientation paysage.

J'ai remarqué un comportement étrange sur l'écran des applications récentes sur Android pour lequel je ne trouve aucune explication. Lorsque j'ouvre des applications sur un téléphone en mode paysage et que je passe à l'écran des applications récentes, tout ce que je vois est un carré blanc pour cette application, sans vignette d'aperçu.

Voici ce que cela donne sur un OnePlus 6 lorsque j'ouvre Chrome en mode portrait et que j'ouvre l'écran des applications récentes.

Mais lorsque j'ouvre Chrome en mode paysage et que j'accède à l'écran des applications récentes, j'obtiens ceci

Et un comportement similaire sur un Pixel 3 :

Ouverture de Chrome en mode portrait et passage aux applications récentes

Ouverture de Chrome en mode paysage et basculement vers les applications récentes

Si je laisse un peu de temps au Pixel 3, il finira par générer une vignette pour l'application paysage, mais la moitié du temps, elle a l'air écrasé comme ceci et l'autre moitié n'est pas à jour avec ce qui était réellement montré à l'écran.

Ma question est la suivante : pourquoi Android semble-t-il avoir du mal à générer des vignettes d'aperçu en mode paysage pour l'écran des applications récentes ? Quelqu'un d'autre a-t-il fait l'expérience de ce comportement ou connaît-il une solution ?

1voto

Andrew T. Points 12017

En tant que développeur Android, la seule chose dont je puisse être sûr est que les changements de configuration obligent à redémarrer l'activité . Cela inclut l'orientation de l'écran (portrait, paysage), de sorte que Chrome doit être détruit et recréé, renvoyant à la place un contenu paysage vide/échec.

De Développeurs Android - Gérer les changements de configuration

Gérer les changements de configuration

Certaines configurations du dispositif peuvent changer pendant l'exécution (comme l'orientation de l'écran, la disponibilité du clavier et le moment où l'utilisateur active le mode multifenêtre). Lorsqu'un tel changement se produit, Android redémarre l'application en cours d'exécution. Activity ( onDestroy() est appelé, suivi par onCreate() ). Le comportement de redémarrage est conçu pour aider votre application à s'adapter aux nouvelles configurations en rechargeant automatiquement votre application avec des ressources alternatives qui correspondent à la nouvelle configuration du périphérique.

Pour gérer correctement un redémarrage, il est important que votre activité rétablisse son état précédent. [...]

(également, liste des les changements de configuration )

Je ne peux pas reproduire ce problème sur mon appareil*, mais d'après les captures d'écran, la liste récente est toujours affichée en mode portrait Il y a donc un passage du paysage au portrait entre le déclenchement de l'événement "liste des applications récentes" et son affichage. Je ne suis pas sûr de l'ordre des événements pour la rotation de l'écran, la destruction de l'application et la recréation de l'application, mais il est fort probable que ce soit détruit-rotation-recréation, donc l'application n'est pas encore prête à rendre à nouveau l'activité (puisqu'une activité ne peut pas non plus fonctionner en arrière-plan), renvoyant un écran blanc ou utilisant son état précédent (le contenu paysage périmé) à la place.

Le "correctif", s'il est possible, est d'autoriser l'affichage de la "liste des applications récentes" en mode paysage.


*La raison pour laquelle je ne peux pas reproduire ce problème est que mon appareil permet d'afficher la "liste des applications récentes" en mode paysage, de sorte que la vignette s'affiche correctement. Cependant, lorsque je tourne en mode portrait alors que je suis dans la liste, la vignette s'affiche écrasée comme dans la capture d'écran.

En outre, le redémarrage peut être observé plus facilement en faisant pivoter l'écran lorsque Chrome est actif : après la rotation, Chrome restitue le contenu dans l'espace actuellement disponible.

Enfin, je ne sais pas pourquoi la liste des applications récentes est forcée en mode portrait, mais cela n'entre pas dans le cadre de la question.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X