Android 16 apporte une de ces améliorations qui, à première vue, semblent mineures, mais qui, au quotidien, peuvent faire une grande différence : Les mises à jour des applications deviennent quasi instantanées et beaucoup moins agaçantes.Grâce à une combinaison de modifications du système et de nouvelles fonctionnalités d'installation d'applications, Google souhaite que votre téléphone soit toujours à jour sans que vous ayez l'impression que quelque chose se bloque constamment.
Derrière cette expérience plus fluide se cachent plusieurs composants techniques qui fonctionnent en arrière-plan : les nouvelles « mises à jour d'applications transparentes », la relocalisation de processus comme dexopt et dex2oat, et ce qu'on appelle la construction dans le cloudTout cela s'ajoute aux autres changements importants d'Android 16 qui affectent les développeurs, les performances, la sécurité, la confidentialité, la santé numérique et la compatibilité avec davantage de formats d'écran. Examinons de plus près les changements apportés.
Que sont les mises à jour d'applications transparentes sous Android 16 ?
L'idée centrale d'Android 16 dans ce domaine est claire : afin de garantir que les mises à jour d'applications aient le moins d'impact possible sur l'utilisation normale du téléphone mobileJusqu'à présent, à chaque mise à jour d'une application, le système devait la « figer » pendant une courte période le temps de remplacer son code et ses ressources internes, l'empêchant ainsi de fonctionner en parallèle afin d'éviter les erreurs, les pannes de données ou les arrêts inattendus.
Que Un gel temporaire était justifié du point de vue de la stabilité.Mais en pratique, cela pouvait s'avérer gênant. Dans les applications volumineuses ou critiques pour le système, ce gel de quelques secondes suffisait à perturber le fonctionnement des autres applications qui en dépendaient, à les bloquer en attente, voire à provoquer des erreurs ponctuelles.
Avec Android 16, Google franchit une nouvelle étape et adopte plus activement le concept de Mises à jour transparentes de l'applicationL'objectif n'est pas seulement de réduire la durée de la mise à jour, mais aussi de minimiser autant que possible, voire de façon quasi imperceptible pour l'utilisateur, le temps pendant lequel l'application est totalement inopérante.
Selon les informations fournies par Google via des sources officielles, La durée pendant laquelle une application reste bloquée lors d'une mise à jour est passée de « plusieurs secondes » à « quelques dizaines de millisecondes ».Concrètement, il s'agit de passer brutalement d'une pause que vous avez clairement remarquée à un scintillement que, dans de nombreux cas, vous ne percevez même pas.
Comment Android 16 accélère les mises à jour d'applications
Pour parvenir à cette réduction drastique des temps d'arrêt, Android 16 ne recourt pas à des astuces superficielles. Cela permet de réorganiser des tâches internes très lourdes et de les avancer à une étape antérieure à l'installation.La période « critique » pendant laquelle l'application doit être gelée se trouve donc considérablement raccourcie.
Les deux éléments clés ici sont dexopt et dex2oatIl s'agit d'outils de l'environnement d'exécution Android (ART) chargés d'optimiser le bytecode de l'application. Traditionnellement, certaines de leurs opérations étaient exécutées précisément pendant la pause de l'application, ce qui pouvait parfois prolonger cette pause de plusieurs secondes.
Avec Android 16, Ces processus passent à une phase antérieure du flux de mise à jour.Autrement dit, le système effectue la majeure partie de l'optimisation avant d'atteindre le point où il doit remplacer les anciens fichiers par les nouveaux. Lorsque la pause critique survient, il ne reste plus qu'à effectuer un échange de fichiers rapide, réduisant ainsi le temps de blocage à quelques dizaines de millisecondes seulement.
Cette approche présente un double avantage : d’une part, L'utilisateur perçoit la mise à jour comme quasi instantanée. car l'application reste quasiment indisponible ; par ailleurs, le même niveau de sécurité et de cohérence des données est maintenu, puisque les validations et les optimisations continuent d'être effectuées, mais à un moment moins gênant du processus pour l'utilisateur.
Un véritable impact pour les utilisateurs ayant de nombreuses applications et pour les téléphones mobiles modestes.
Sur un téléphone portable doté de peu d'applications légères, ces changements pourraient passer inaperçus. Si vous n'utilisez que quelques applications qui se mettent à jour occasionnellement et consomment peu de ressources, vous n'avez peut-être jamais ressenti le besoin de considérer les mises à jour comme un problème.Mais la situation change considérablement lorsqu'il s'agit d'appareils dotés de dizaines d'applications, de jeux gourmands en ressources ou de services fréquemment mis à jour.
Sur les téléphones où de nombreuses applications sont utilisées intensivement, Réduire le temps d'arrêt entre les mises à jour signifie moins de brefs blocages, moins de sauts d'interface étranges et une expérience globale beaucoup plus fluide.De plus, si l'une de ces applications fait office de service central ou fournit des API à d'autres applications (par exemple, des clients de messagerie, des bibliothèques de sécurité ou des applications système), minimiser leur blocage pendant les mises à jour permet à l'ensemble de la chaîne d'applications de continuer à fonctionner normalement.
Cette évolution est également particulièrement intéressante pour le appareils d'entrée de gamme ou de milieu de gamme inférieurLà où le matériel peine à gérer les installations importantes, Google ne se contente pas de réorganiser les processus locaux, mais associe également cette amélioration à une autre fonctionnalité cruciale d'Android 16 : la compilation dans le cloud pour accélérer l'installation de nouvelles applications, un atout majeur pour les téléphones moins puissants.
Compilation cloud : des applications qui s’installent plus rapidement grâce au cloud
Outre l'accélération des mises à jour, Android 16 intègre une fonctionnalité axée sur… installation initiale d'applications et de jeux, notamment sur des appareils modestesCette fonctionnalité est connue sous le nom de compilation cloud et sa mission est claire : transférer une partie des tâches lourdes qui incombaient auparavant entièrement au processeur et au stockage du téléphone vers les serveurs de Google.
Lorsque vous installez une application sur Android, le système utilise ART pour exécuter son code. Lors de l'installation, l'outil dex2oat prend les fichiers .dex de l'APK, qui contiennent le code compilé, et génère plusieurs « artefacts d'application ».Ces artefacts permettent à l'application de s'ouvrir et de s'exécuter plus rapidement et plus efficacement, et peuvent se présenter sous différents formats : fichiers .vdex contenant des métadonnées pour valider le bytecode, fichiers .odex contenant du code précompilé pour des méthodes spécifiques, ou fichiers .art contenant des représentations internes de chaînes de caractères et de classes qui accélèrent le démarrage de l'application.
Sur les téléphones portables les plus puissants, La génération de ces artefacts est relativement rapide, presque transparente.Mais sur les téléphones bon marché, dotés de processeurs lents et d'une mémoire lente, ce processus peut devenir un goulot d'étranglement, surtout si l'APK comprend de nombreux fichiers .dex ou s'il s'agit d'un jeu ou d'une application très volumineuse.
La proposition d'Android 16 est simple mais efficace : Au lieu de générer tous ces fichiers sur l'appareil, téléchargez-les déjà précompilés depuis Google Play.Aujourd'hui, la plupart des utilisateurs disposent de connexions mobiles et Wi-Fi relativement rapides ; il est donc souvent plus efficace d'utiliser le réseau que de forcer le processeur du téléphone à fonctionner pendant plusieurs secondes, voire plusieurs minutes.
SDM et artefacts précompilés : le rôle des métadonnées Secure Dex
La version cloud d'Android 16 repose sur un nouveau type de fichier : SDM signifie Métadonnées Dex sécuriséesCes fichiers SDM, téléchargés avec le fichier APK depuis le Play Store, contiennent les artefacts de l'application déjà générés dans l'infrastructure de Google à l'aide de dex2oat, de sorte que l'appareil n'a pas à répéter ce travail localement.
Un détail important est que Les fichiers SDM sont signés avec la même clé que l'APK.Cela permet au système de vérifier que les fichiers proviennent d'une source fiable et n'ont pas été altérés, garantissant ainsi l'intégrité et la sécurité du processus. De cette manière, le téléphone peut installer l'application directement à partir de ces fichiers précompilés, ce qui accélère considérablement l'installation initiale, notamment sur les appareils peu performants.
En pratique, cela signifie que Android 16 peut empêcher l'exécution de dex2oat pendant l'installation dans de nombreux cas.Comme le gros du travail a déjà été effectué sur les serveurs de Google, il en résulte une moindre sollicitation du processeur, une consommation d'énergie réduite lors de l'installation et des temps d'attente plus courts lors du téléchargement d'applications ou de jeux volumineux contenant une quantité importante de code.
Cependant, l'ensemble de ce système exige que Google a configuré le Play Store pour générer et distribuer ces SDM en masse.Dans un premier temps, la fonctionnalité peut être présente dans le système sans être pleinement active, car l'infrastructure cloud doit être ajustée et déployée progressivement. Il ne faut donc pas s'attendre à des miracles immédiats sur tous les appareils compatibles ; l'adoption se fera par étapes.
Relation entre les mises à jour rapides et la construction du cloud
Bien qu'elles puissent sembler être deux choses distinctes, Les mises à jour transparentes et la création de cloud sont étroitement liées. Ces deux aspects dépendent de la manière et du moment où les artefacts d'exécution de l'application sont générés et appliqués. D'une part, Android 16 avance l'exécution de dexopt et dex2oat à des phases moins critiques du processus de mise à jour, minimisant ainsi la durée pendant laquelle l'application reste bloquée.
En outre, La compilation dans le cloud signifie que, dans de nombreux cas, ce travail n'a même pas besoin d'être effectué sur l'appareil.Cela s'applique aussi bien à l'installation initiale qu'à certaines mises à jour. Le téléchargement de fichiers prêts à l'emploi, combiné à ces deux approches, rend l'installation initiale et les mises à jour ultérieures plus rapides et moins intrusives.
Tout cela s'inscrit dans un objectif fondamental : Optimisez Android pour un fonctionnement fluide même sur du matériel modeste.tout en réduisant les temps d'arrêt et en atténuant les effets secondaires que les mises à jour peuvent avoir sur d'autres applications et services.
Autres changements dans Android 16 qui affectent les performances et l'expérience utilisateur
Les améliorations apportées aux mises à jour et aux installations ne sont pas isolées. Android 16 inclut une longue liste de modifications de comportement qui Elles affectent à la fois les applications qui ciblent la nouvelle version (targetSdkVersion 36) et le système d'exploitation lui-même.Nombre d'entre elles ne sont pas directement liées aux mises à jour de l'application, mais elles influencent la stabilité, les performances ou la cohérence de l'expérience.
Dans le domaine de l'expérience utilisateur et du design, Android 16 renforce l'engagement envers les interfaces bord à bord. En supprimant l'option permettant de désactiver ce mode via l'attribut `windowOptOutEdgeToEdgeEnforcement` dans les applications ciblant le nouveau niveau d'API, les applications destinées à Android 16 ne pourront plus désactiver ce comportement. Les développeurs devront donc adapter leur conception pour un fonctionnement correct en plein écran.
Des changements importants ont également été apportés à la navigation : Les commandes gestuelles prédictives pour le retour à la ligne deviennent la norme pour les applications ciblant Android 16.Sur les appareils dotés de cette version, la fonction `onBackPressed` n'est plus appelée et la touche KEYCODE_BACK n'est plus envoyée comme auparavant ; des animations système guident désormais l'utilisateur vers l'emplacement souhaité lors d'un glissement vers la gauche (accueil, activité précédente, etc.). Les développeurs qui utilisaient le bouton retour doivent migrer vers les nouvelles API de navigation ou, à titre de solution temporaire, désactiver ce comportement avec l'attribut `android:enableOnBackInvokedCallback=false` dans le manifeste.
Principaux changements techniques pour les développeurs
Au-delà de l'expérience visuelle, Android 16 introduit des ajustements au fonctionnement interne des tâches planifiées, des polices et des mises en page réactives.Par exemple, la méthode `scheduleAtFixedRate` modifie son comportement : au lieu d’exécuter toutes les tâches manquées lorsqu’une application retrouve un cycle de vie valide, une seule est déclenchée. Cela permet d’éviter les pics de charge et d’améliorer les performances globales, mais les développeurs doivent vérifier si leur logique est affectée.
Concernant le texte et les polices, L'attribut elegantTextHeight n'a plus aucun effet sur les applications ciblant Android 16.Les polices dites « élégantes » sont abandonnées, il est donc nécessaire de prévoir une conception typographique cohérente pour des langues telles que l'arabe, le thaï, le tamoul ou divers alphabets indiens, sans dépendre de ce réglage automatique.
Sur les appareils dotés de grands écrans (tablettes, appareils pliables, ordinateurs de bureau, voitures, téléviseurs…), Android 16 renforce encore l'idée de conception adaptativeSur les écrans d'une largeur minimale de 600 dp, les restrictions d'orientation, de redimensionnement et de format d'image déclarées dans le manifeste sont ignorées. L'application s'affichera donc en plein écran, sans bandes noires latérales ni orientation portrait ou paysage forcée. Seuls les jeux, certaines exceptions configurées par l'utilisateur et les écrans de petite taille sont exemptés de cette règle.
Il existe une voie d'évacuation temporaire : La propriété android.window.PROPERTY_COMPAT_ALLOW_RESTRICTED_RESIZABILITY peut être déclarée au niveau de l'activité ou de l'application. Pour conserver le comportement actuel sur les grands écrans. Cependant, cette fonctionnalité disparaîtra dans les versions ultérieures (niveau d'API 37). Il est donc conseillé d'adapter les interfaces dès maintenant.
Actualités en matière de santé, de connectivité et de sécurité
Android 16 renforce également les contrôles sur données sur la santé et l'activité physiqueLes autorisations BODY_SENSORS et BODY_SENSORS_BACKGROUND sont remplacées par des autorisations plus spécifiques dans l'espace android.permissions.health, conformément à Health Connect. Les applications qui lisent des données sensibles telles que la fréquence cardiaque doivent demander des autorisations détaillées comme READ_HEART_RATE et afficher leur politique de confidentialité, sous peine de voir ces autorisations révoquées par le système.
Dans le domaine du Bluetooth, De nouvelles intentions sont introduites, telles que ACTION_KEY_MISSING et ACTION_ENCRYPTION_CHANGE.Pour mieux gérer la perte d'appairage et les modifications de chiffrement, les applications qui gèrent les appareils appariés peuvent réagir plus précisément en cas de perte de clés, de rechiffrement de la liaison ou de modification des paramètres de sécurité, en s'adaptant aux différences potentielles entre les fabricants.
En outre, Toutes les applications ciblant Android 16 peuvent désormais supprimer le jumelage Bluetooth des appareils associés via une API publique dans CompanionDeviceManager.L'appel removeBond(int) vous permet de révoquer le jumelage Bluetooth lié à une association CDM, et l'application peut écouter ACTION_BOND_STATE_CHANGED pour suivre les changements dans l'état du jumelage.
En matière de sécurité, Android 16 continue de renforcer le système. MediaStore#getVersion() renvoie désormais une valeur unique par applicationCela empêche l'utilisation de cette chaîne comme mécanisme d'identification entre applications. L'initiative « Secure Intents » progresse également, visant à renforcer le système de résolution des intentions : lorsqu'elle est activée via l'attribut intentMatchingFlags, des intentions explicites sont requises pour correspondre au filtre du composant cible, et les intentions sans action ne peuvent pas correspondre aux filtres, sauf si des indicateurs spécifiques comme allowNullAction sont utilisés.
Ce contrôle plus strict peut être activé au niveau de l'application ou du composant (activité, service, récepteur…), avec des indicateurs tels que appliquerIntentFilter ou aucunIl inclut également des messages de journalisation pour le débogage des intentions bloquées. L'objectif est de passer progressivement à un modèle où, dans les versions futures, cette résolution stricte deviendra le comportement par défaut.
Protections supplémentaires : GPU Mali, réseau local et photos
Un autre domaine où Android 16 renforce la sécurité est celui de accès au GPU Mali sur les appareils PixelLes IOCTL anciennes ou celles destinées exclusivement au développement sont bloquées, et les IOCTL de profilage sont limitées aux processus shell ou aux applications débogables. Ceci ne devrait pas affecter les applications classiques, les API graphiques standard comme Vulkan ou OpenGL, ni les outils de profilage officiels, mais limite les vecteurs d'attaque potentiels au niveau du noyau. Si une application tente d'utiliser des IOCTL interdites, le système génère des refus SELinux, et Google recommande de signaler le problème aux autorités de sécurité compétentes.
En matière de confidentialité, Android 16 franchit une étape très importante avec… Protections du réseau localActuellement, toute application autorisée à accéder à Internet peut accéder aux appareils du réseau local, ce qui ouvre la voie aux techniques d'empreinte numérique ou à l'utilisation du réseau local comme proxy de localisation. La nouvelle approche place cet accès sous une autorisation d'exécution spécifique au sein du groupe des appareils à proximité.
Le déploiement est progressif, avec une phase de mise en œuvre (T2 25) au cours de laquelle Les applications peuvent activer des restrictions via le cadre de compatibilité et tester leurs cas d'utilisation.Lorsque l'indicateur RESTRICT_LOCAL_NETWORK est défini pour un paquet, le trafic vers et depuis les adresses du réseau local (unicast, multicast ou broadcast sur TCP et UDP) générera des erreurs si l'application ne dispose pas des autorisations appropriées, tandis que le trafic Internet normal continuera de fonctionner.
Dans cette phase initiale, Pour retrouver l'accès au réseau local, l'application doit simplement déclarer et obtenir l'autorisation NEARBY_WIFI_DEVICES.Cependant, une autorisation spécifique sera introduite ultérieurement au sein du groupe des périphériques à proximité. Les réseaux tels que 10.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, les liaisons locales 169.254.0.0/16, les plages CGNAT 100.64.0.0/10 et les adresses multicast (224.0.0.0/4, ff00::/8), entre autres, sont considérés comme « locaux ».
Enfin, Android 16 ajuste la gestion de l'accès aux photos et aux vidéos. Lorsqu'une application ciblant le SDK 36 demande des autorisations d'accès au contenu multimédia sur un appareil exécutant Android 16 Si l'utilisateur choisit de n'autoriser l'accès qu'à certains éléments, les photos et vidéos générées par l'application apparaîtront présélectionnées dans le sélecteur de photos. L'utilisateur peut les désélectionner s'il le souhaite, ce qui révoque l'accès de l'application à ces éléments.
Tous ces changements (mises à jour quasi instantanées, compilation dans le cloud, nouvelles autorisations, contrôle accru des intentions, sécurité renforcée du GPU et du réseau local, et améliorations en matière de santé, de connectivité et de conception adaptative) convergent vers le même objectif : faire d'Android 16 une plateforme plus fluide, plus prévisible et plus sécurisée pour les utilisateurs et les développeurs.
À mesure que de plus en plus de modèles de des marques comme SamsungÀ mesure que les téléphones Xiaomi, Motorola, OnePlus et, bien sûr Pixel recevront cette version, l'installation ou la mise à jour d'une application ne sera plus un moment d'incertitude, mais une procédure simple que vous remarquerez à peine en continuant à utiliser votre téléphone normalement. Partagez cette information afin que les autres utilisateurs puissent rester au courant des nouvelles fonctionnalités d'Android 16.
