Android 12 permet aux développeurs de savoir plus facilement quels appareils sont plus puissants que d'autres grâce à ce qu'on appelle la « classe de performances ».
Les appareils Android sont de toutes formes. Nous avons des smartphones moins chers avec des spécifications plus faibles et des smartphones plus chers avec de meilleurs composants internes. En tant qu'utilisateur, vous pouvez évidemment savoir si votre smartphone peut être considéré comme « puissant » ou non en consultant simplement ces spécifications en ligne. Mais comment une application exécutée sur votre appareil peut-elle le savoir? Il pourrait théoriquement faire des choses comme faire correspondre le nom de votre appareil à une base de données, puis en extraire les spécifications, vérifier les propriétés du système pour le numéro de pièce/RAM du SoC. capacité/etc, ou appeler des API Android qui répertorient des informations telles que la résolution, etc., mais il n'existe pas de moyen simple et unifié de déterminer le type de performances qu'un appareil Android peut atteindre. livrer. Il serait utile de disposer d'un moyen rapide de regrouper les appareils en catégories afin qu'une application puisse offrir différentes expériences optimisées pour chaque classe d'appareils. À cette fin, Google a introduit à
Selon Google, cette norme « définit un ensemble de fonctionnalités qui vont au-delà des exigences de base d'Android. Les appareils qui répondent aux exigences de la classe de performances peuvent prendre en charge des cas d'utilisation plus exigeants et fournir un contenu de meilleure qualité. » Les développeurs d'applications peuvent vérifier à quelle classe de performances appartient un appareil au moment de l'exécution, puis personnalisez l'application pour offrir une expérience qui tire pleinement parti des performances de l'appareil. performance. Dans un premier temps, Google affirme qu'il « concentre les capacités de classe de performance sur les cas d'utilisation des médias, avec des exigences incluant l'appareil photo ». latence de démarrage, disponibilité des codecs et qualité d'encodage, ainsi que taille minimale de la mémoire, résolution d'écran et lecture/écriture performance."
Sur la page des développeurs Android, Google indique que chaque version d'Android a sa propre classe de performances correspondante, ce qui signifie qu'il existe une classe de performances pour Android 12 et qu'il y en aura une pour Android 13, 14, etc. La classe de performances sera définie dans le document de définition de compatibilité (CDD) pour cette version particulière du système d'exploitation Android (remarque: le CDD d'Android 12 n'est pas encore public) et si ou aucun appareil ne répond réellement à cette classe de performances est appliqué par la suite de tests de compatibilité (CTS), un ensemble automatisé de tests qui vérifie la compatibilité avec un système d'exploitation Android version.
Les classes de performances sont rétrocompatibles, ce qui signifie qu'un appareil peut passer à une nouvelle version d'Android sans modification. sa classe de performances, mais cela signifie également que les appareils peuvent changer de classe s'ils répondent aux exigences de ce nouveau système d'exploitation version. Alors que le concept de classe de performances est introduit avec Android 12, Google indique qu'il définira également une classe de performances pour Android 11. Cela signifie que les appareils hautement performants passant d'Android 11 à Android 12 qui répondent aux performances les exigences de classe pour Android 11, mais pas pour Android 12, peuvent toujours informer les applications qu'elles sont très performantes dispositifs.
Bien que Google n’ait pas partagé de détails exacts sur les exigences liées à la classe de performances pour Android 12, nous avons creusé un peu et trouvé certaines des exigences. Ils comprennent:
- Au moins 6 Go de RAM
- Au moins 400 dpi et résolution 1080p
- Vitesses d'écriture séquentielle d'au moins 150 Mo/s, lecture séquentielle de 250 Mo/s, écriture aléatoire de 10 Mo/s et vitesse de lecture aléatoire de 40 Mo/s
Ainsi que d'autres exigences concernant un nombre maximum de sessions simultanées de décodeur et d'encodeur vidéo, une faible latence d'initialisation du codec, un faible nombre de pertes d'images de lecture, et bien plus encore.
Cette fonctionnalité peut être utile aux développeurs d'applications pour améliorer l'expérience globale non seulement sur les appareils répondant à la spécification de « classe de performances », mais également sur les téléphones bas de gamme. Si une application détecte qu'un téléphone ne répond pas aux exigences d'un appareil de « classe de performances », elle peut l'éteindre. certaines fonctionnalités ou effets visuels plus exigeants afin d'améliorer le fonctionnement de cette application sur les applications bas de gamme Téléphone (s. De même, ils peuvent ajouter des fonctionnalités sur des appareils de classe de performances que les téléphones bas de gamme ne prendraient normalement pas en charge sans compromettre l'expérience de ces utilisateurs.