Notes de version pour Android 12 et Android 12L

Cette page résume les principales fonctionnalités des versions Android 12 et Android 12L et fournit des liens vers des informations supplémentaires. Ces résumés de fonctionnalités sont organisés en fonction de l'emplacement de la documentation de la fonctionnalité sur ce site.

Architecture

Mises à jour de la classe AlwaysOnHotwordDetector

À partir d'Android 12, la classe AlwaysOnHotwordDetector , y compris sa méthode d'usine, android.service.voice.VoiceInteractionService.createAlwaysOnHotwordDetector() , est une API système ( @SystemApi ) au lieu d'une API publique. La classe AlwaysOnHotwordDetector est destinée à être utilisée par les applications Assistant dotées de privilèges au niveau du système, qui sont généralement fournies avec la version du système d'exploitation. Sous Android 11 et versions antérieures, l'API est protégée par des contrôles qui garantissent que l'appelant est l'application Assistant actuellement active, ce qui rend l'API inutilisable par d'autres applications tierces.

De plus, Android 12 inclut des améliorations de la fonctionnalité de déclenchement sonore pour améliorer l'attribution et l'application des autorisations liées à l'utilisation du microphone via l'API de déclenchement sonore. L'utilisation du microphone, y compris l'utilisation indirecte, par exemple via les classes SoundTriggerManager ou AlwaysOnHotwordDetector , est attribuée au package d'origine (application Assistant) qui appelle la classe AlwaysOnHotwordDetector . Cela améliore la confidentialité des utilisateurs et la transparence sur les packages qui utilisent le microphone. Dans Android 11 et versions antérieures, l'utilisation du microphone est attribuée à l'utilisateur du système, car le package d'origine n'utilise pas l'API de déclenchement sonore directement, mais via des services de niveau supérieur résidant dans le processus system_server .

L’impact de ces changements est le suivant :

  • Les applications non système utilisant la classe AlwaysOnHotwordDetector ne parviennent pas à se compiler avec l'API Android 12, car l'API a été supprimée de la surface publique.
  • Les applications système existantes utilisant la classe AlwaysOnHotwordDetector peuvent se voir refuser l’utilisation des fonctionnalités de déclenchement sonore au moment de l’exécution. Pour résoudre ce problème et permettre à ces applications d'accéder au microphone via un déclencheur sonore, déclarez les autorisations RECORD_AUDIO et CAPTURE_AUDIO_HOTWORD pour ces applications.

Prise en charge du langage Android Rust

Android 12 prend désormais en charge l'utilisation du code Rust. Une nouvelle section ajoutée à la documentation d'installation fournit des conseils pour développer sur Android avec Rust.

Pour plus d'informations sur Android Rust, les différents modules et pour voir des exemples (ainsi que pour obtenir des informations sur la configuration de l'IDE), consultez la nouvelle section Android Rust sur Android Rust Introduction .

En-tête de l'image de démarrage

Android 12 ajoute l'utilisation de l'en-tête d'image de démarrage version 4, qui est l'image de démarrage principale pour les appareils prenant en charge l'architecture Generic Kernel Image (GKI) . Android 12 fournit également une boot_signature pour vérifier l'intégrité du noyau et du disque virtuel. La vérification, effectuée dans VtsSecurityAvbTest , est requise pour les appareils utilisant l'architecture GKI.

Pour en savoir plus, consultez la page En-tête de l'image de démarrage .

Modifications apportées à l'implémentation de bootconfig

La fonctionnalité bootconfig dans Android 12, un mécanisme permettant de transmettre les détails de configuration de la version et du chargeur de démarrage à Android 12, remplace les options de ligne de commande du noyau androidboot.* utilisées avec Android 11 et versions antérieures. Cette fonctionnalité permet de séparer les paramètres de configuration de l'espace utilisateur Android de ceux du noyau.

Pour en savoir plus, visitez Implémentation de Bootconfig .

Police de secours personnalisée

Avant Android 12, la mise à jour des fichiers de polices installés sur l'appareil dans AOSP (dans la partition /system/fonts ) ou dans les partitions du fournisseur (dans les partitions /product/fonts ou /system/fonts ) nécessitait une mise à jour du système de la part de l'OEM. Cette exigence a un impact significatif sur la compatibilité des emoji. Sous Android 12, vous pouvez utiliser le service système FontManager pour gérer les fichiers de polices installés et mettre à jour les fichiers de polices installés sur l'appareil sans mise à jour du système.

Pour plus d’informations sur cette nouvelle fonctionnalité, consultez Implémentation du remplacement de polices personnalisées.

Tas DMA-BUF

Dans Android 12, GKI 2.0 remplace l'allocateur ION par des tas DMA-BUF .

Activer les filtres régionaux

Android 12 introduit une fonctionnalité que vous pouvez utiliser pour configurer les langues système par défaut et les filtres régionaux pour les nouveaux types d'appareils. Cela vous permet de définir la valeur de la propriété du filtre et la langue par défaut via oem/oem.prop lors de l'étalonnage en usine, et de configurer des restrictions sans intégrer le filtre dans l'image système.

Pour plus d'informations, voir Activation du filtre de paramètres régionaux .

Disques RAM du fournisseur Flash

Android 12 introduit la prise en charge du flashage des disques virtuels des fournisseurs via une commande fastboot qui extrait l'image complète vendor_boot d'un appareil. La commande invite l'outil de démarrage rapide côté hôte à lire l'en-tête de démarrage du fournisseur, à réimager et à flasher la nouvelle image. Cette prise en charge inclut les modifications du chargeur de démarrage et de fastbootd pour obtenir les données nécessaires, telles que la taille et le décalage de la partition.

Pour plus d'informations, consultez Clignotement des disques virtuels du fournisseur sur la page Fastboot dans l'espace utilisateur .

Gestion des versions GKI

À partir d’Android 12, la partie Android de la version KMI peut être extraite du noyau et injectée dans le manifeste de l’appareil au moment de la construction.

Pour plus de détails, consultez Gestion des versions GKI .

Statistiques de mémoire historique des événements MM

Les appareils qui se lancent sur Android 12 peuvent utiliser mm_events , un ensemble de statistiques liées à la mémoire qui sont capturées périodiquement lorsqu'un système subit une pression sur la mémoire. mm_events est intégré aux mécanismes de traçage perfetto et ajoute une surcharge de performances minimale. La collecte de statistiques reste active pendant une période configurable, capturant des statistiques à intervalles réguliers.

Pour plus d'informations sur l'utilisation des statistiques mm_events , consultez MM Events - Historical Memory Statistics .

Restrictions de la fenêtre d'alerte système

Pour améliorer la sécurité de l'écosystème Android, Android 12 a rendu plus difficile l'acquisition de l'autorisation SYSTEM_ALERT_WINDOW et permet aux applications tierces de bloquer les superpositions d'autres applications tierces.

Les applications préinstallées ne reçoivent pas automatiquement l'appOp SYSTEM_ALERT_WINDOW dans Android 12. Elle doit être explicitement accordée par l'utilisateur avant qu'une application préinstallée puisse l'utiliser. Les applications système obtiennent toujours l’autorisation par défaut.

Les applications tierces peuvent refuser que les superpositions d'applications soient affichées dessus. Cela fournit un mécanisme de protection contre les attaques de type cloak and dagger . Ceci est disponible pour toutes les applications afin que les applications sensibles à la sécurité, telles que les applications bancaires, puissent se protéger. Pour utiliser cette fonctionnalité, une application doit déclarer l'autorisation HIDE_OVERLAY_WINDOWS dans son manifeste.

HIDE_NON_SYSTEM_OVERLAY_WINDOWS(signature|privileged) est obsolète au profit de HIDE_OVERLAY_WINDOWS .

Modifications des partitions de démarrage du fournisseur

Les appareils Android 12 utilisant la version 4 de l’en-tête d’image de démarrage prennent en charge plusieurs disques virtuels de fournisseurs dans la partition vendor_boot . Ces fragments de disque virtuel sont concaténés en série dans la section du disque virtuel du fournisseur. Un tableau du disque virtuel du fournisseur décrit la disposition de la section du disque virtuel du fournisseur et les métadonnées de chaque fragment de disque virtuel du fournisseur.

En raison des modifications apportées aux partitions de démarrage du fournisseur dans Android 12 et versions ultérieures, vous ne pouvez pas utiliser default comme nom de fragment de disque virtuel du fournisseur ; il est désigné comme réservé. Son utilisation pour nommer des fragments de disque virtuel du fournisseur n'est en aucun cas autorisée.

Pour en savoir plus, consultez Partitions de démarrage du fournisseur et Disques virtuels de plusieurs fournisseurs .

l'audio

Routage combiné de périphériques audio

La fonctionnalité de routage combiné des périphériques audio ajoute la prise en charge du streaming audio vers plusieurs périphériques audio simultanément. Grâce à cette fonctionnalité, les applications privilégiées peuvent sélectionner plusieurs appareils préférés pour une stratégie particulière au moyen d'API système. Les applications peuvent découvrir plus précisément les capacités des appareils audio en utilisant les API publiques fournies par cette fonctionnalité.

Pour plus d’informations, consultez la page Routage combiné des périphériques audio .

Mises à jour de Audio HAL V7

Afin de résoudre les problèmes de compatibilité ascendante, Stable AIDL sera obligatoire pour toutes les modifications de HAL à partir d'Android 13. Pour préparer et améliorer cette future adoption d'AIDL, des modifications importantes sont apportées à la version 7 de Audio HAL dans Android 12.

Pour plus d'informations, consultez la section Mises à jour de la section Audio HAL V7 et l' exemple de stratégie audio .

Caméra

Entrée de métadonnées statiques de caméra pour les appareils pliables

Android 12 introduit l'entrée de métadonnées statiques de la caméra deviceStateOrientationMap qui permet à la caméra HAL d'informer le client de la caméra et le cadre de la caméra des changements d'orientation du capteur déclenchés par un changement dans l'état de pliage d'un appareil. Les appareils pliables peuvent éventuellement utiliser une ou plusieurs caméras logiques composées de dispositifs physiques avec différentes orientations de capteur pour différents états de pliage des appareils. L'entrée de métadonnées deviceStateOrientationMap permet à la structure de la caméra de garantir que les transformations de surface de sortie nécessaires sont appliquées lorsque l'ID physique actif change dans les résultats de capture.

Pour des informations plus détaillées, consultez metadata_definitions.xml .

Exigence de prise en charge de l'extension du fournisseur CameraX

Dans Android 12, les appareils prenant en charge les extensions CameraX doivent avoir la propriété ro.camerax.extensions.enabled définie sur true , ce qui permet de demander si un appareil prend en charge les extensions.

Pour plus d'informations, consultez Configuration de la bibliothèque du fournisseur sur un appareil .

Prise en charge du capteur de caméra Quad Bayer

Android 12 introduit des API de plate-forme qui permettent aux applications de tirer parti des appareils dotés de capteurs de caméra à ultra haute résolution, généralement avec des modèles quad ou nona bayer qui offrent une flexibilité en termes de qualité d'image et de performances en faible luminosité. Les nouvelles API prennent en charge le comportement de ces capteurs en tenant compte du fait qu'ils peuvent prendre en charge différentes configurations et combinaisons de flux lorsqu'ils fonctionnent en mode « résolution maximale » au lieu du mode « par défaut ».

Pour implémenter la prise en charge de la caméra HAL pour les capteurs de caméra ultra haute résolution, les fabricants d'appareils doivent implémenter des modifications pour les fichiers suivants :

Compatibilité

Exigence de prise en charge ADN pour les cartes SIM

À partir d'Android 12, toutes les cartes SIM des appareils utilisés pour les tests CTS doivent prendre en charge le stockage des numéros de composition abrégés (ADN).

Pour plus de détails, voir Écran et stockage .

Mises à jour de la caméra ITS

Android 12 introduit diverses mises à jour de Camera Image Test Suite (ITS), notamment des tests nouveaux et mis à jour, la refactorisation vers Python 3 et l'adoption du framework de test Mobly.

Pour plus d’informations, consultez les notes de version d’Android 12 Camera Image Test Suite .

Mises à jour du CDD

Le document de définition de la compatibilité Android 12 itère sur les versions précédentes avec des mises à jour pour les nouvelles fonctionnalités et des modifications des exigences pour les fonctionnalités précédemment publiées.

Connectivité

Découpage du réseau 5G

Android 12 prend en charge le découpage du réseau 5G, l'utilisation de la virtualisation du réseau pour diviser les connexions réseau uniques en plusieurs connexions virtuelles distinctes qui fournissent différentes quantités de ressources à différents types de trafic. Cela permet aux opérateurs de réseau de consacrer une partie du réseau à fournir des fonctionnalités spécifiques à un segment particulier de clients.

Pour plus d'informations, consultez Découpage du réseau 5G .

Profils Companion Device Manager

Les applications qui ciblent Android 12 et versions ultérieures peuvent utiliser les profils d’appareil compagnon lors de la connexion à une montre. L’utilisation d’un profil simplifie le processus d’inscription en regroupant l’octroi d’un ensemble d’autorisations spécifiques au type d’appareil en une seule étape.

Capture d'écran d'un téléphone affichant une invite proposant d'accorder des autorisations

Les autorisations groupées sont accordées à l'application compagnon une fois l'appareil connecté et ne durent que tant que l'appareil est associé. La suppression de l'application ou la suppression de l'association supprime les autorisations.

Pour plus d’informations, consultez Profils de périphérique compagnon .

Droit au service IMS (TS.43)

Android 12 inclut la prise en charge de la configuration des droits de service TS.43 , une spécification GSMA qui définit l'étape de vérification des droits pour l'activation de services, notamment la voix sur Wi-Fi (VoWiFi), la voix sur LTE (VoLTE) et les SMS sur IP. (SMSoIP), activation du service sur appareil (ODSA) des appareils compagnons eSIM (associés à l'appareil demandeur) et informations sur le plan de données.

Pour plus d'informations, voir Droits au service IMS .

Inscription unique IMS

Android 12 ajoute la prise en charge d'un modèle d'enregistrement unique pour fournir les fonctionnalités MMTEL et RCS. Ce modèle permet aux appareils de gérer toutes les fonctionnalités IMS via un seul enregistrement IMS fourni par ImsService de l'appareil. Par rapport à un modèle à double enregistrement, dans lequel plusieurs enregistrements IMS sont gérés sur un seul appareil, l'enregistrement unique réduit le trafic sur le réseau d'un opérateur et augmente la fiabilité.

Pour plus d’informations, consultez Inscription unique IMS .

Détection du fuseau horaire de localisation

Android 12 inclut la détection de fuseau horaire de localisation, une fonction de détection automatique de fuseau horaire en option qui permet aux appareils d'utiliser leurs données de localisation et de carte de fuseau horaire pour déterminer le fuseau horaire actuel.

Pour plus d’informations, consultez Détection du fuseau horaire de l’emplacement .

Randomisation MAC

Android 12 introduit le type de randomisation MAC non persistant, qui permet à Android de re-randomiser les adresses MAC de certains réseaux au début de chaque connexion.

Pour plus d'informations, consultez Comportement de randomisation MAC .

Sélection de réseau

Android 12 introduit un nouveau mécanisme de sélection de réseau utilisant la classe NetworkScore . La sélection du réseau affecte la manière dont Android répond aux demandes de réseau des applications et du système, ainsi que la manière dont le réseau par défaut d'une application est choisi.

Pour plus d'informations, voir Sélection du réseau .

Style d'appel de notification

À partir d'Android 12, nous recommandons aux applications d'utiliser le nouveau style de notification, CallStyle , pour les appels vocaux et vidéo entrants et en cours. Ce style de notification comprend des boutons d'action pour répondre, refuser et raccrocher des appels téléphoniques. Il utilise également le même style centré sur la personne que celui utilisé par les conversations , ce qui est cohérent avec son comportement consistant à classer les notifications d'appel en haut de l'ombre.

Pour que les applications utilisent le style de notification CallStyle , elles doivent utiliser soit une intention plein écran, soit un service de premier plan (avec l'autorisation associée). Ce style classe les notifications d’appels en haut de l’ombre. Pour les appels en cours, ce style ajoute une puce à la barre d'état permettant aux utilisateurs de revenir rapidement à l'application appelante.

Pour plus d'informations, voir Notifications d'appel .

Mises à jour des points d'accès

Android 12 introduit Passpoint R3 et d'autres fonctionnalités Passpoint telles que les termes et conditions, les URL d'informations sur les lieux, les préfixes d'identité décorés et la gestion imminente de la désauthentification.

Pour plus d'informations sur ces fonctionnalités, consultez Passpoint (Hotspot 2.0) .

Mises à jour du portefeuille à accès rapide

Sous Android 12 ou version ultérieure, la fonctionnalité Quick Access Wallet est disponible à partir de l'ombre plutôt que depuis le menu d'alimentation comme dans Android 11. L'interface utilisateur du portefeuille s'exécute désormais dans l'interface utilisateur système et se trouve dans frameworks/base/packages/SystemUI/src/com/android/systemui/wallet .

Pour plus d'informations, consultez Portefeuille à accès rapide .

Expérience utilisateur de connectivité simplifiée

Android 12 offre une expérience de connectivité simplifiée en option qui aide les utilisateurs à mieux comprendre leurs connexions réseau, à basculer entre les fournisseurs d'accès Internet et à résoudre les problèmes de connectivité réseau.

Pour plus d'informations, voir Interface utilisateur de connectivité .

Priorité de la source de temps

À partir d’Android 12, le framework donne la priorité par défaut à la source de temps Network Time Protocol (NTP) par rapport à la source Network Identity and Time Zone (NITZ).

Pour plus de détails sur la façon de configurer et de tester la priorité de la source de temps sur votre appareil, consultez Priorité de la source de temps .

Basculer pour désactiver la 2G

Pour améliorer la sécurité, Android 12 introduit une bascule 2G dans les paramètres qui permet aux utilisateurs de désactiver complètement les connexions cellulaires 2G. Radio 1.6 HAL doit être implémenté pour cette fonctionnalité.

La fonction de bascule 2G est activée par défaut. Les opérateurs peuvent désactiver la fonctionnalité au moment de l'exécution via l'indicateur CarrierConfig KEY_HIDE_ENABLE_2G .

Les fabricants d'appareils doivent s'assurer que tous les réseaux sont disponibles pendant les appels d'urgence.

Spécifications UICC

Dans Android 12, pour exécuter les tests de l'API de l'opérateur CTS, l'appareil doit utiliser un UICC de développeur avec des privilèges d'opérateur CTS répondant aux exigences spécifiées dans la dernière version de la spécification tierce GSMA TS.48 Test Profile.

Voir Préparation de l'UICC pour plus d'informations.

Concurrence Wi-Fi AP/AP

Android 12 introduit la fonctionnalité de simultanéité Wi-Fi AP/AP, qui permet aux appareils d'afficher un point d'accès de partage de connexion double ponté (AP+AP).

Pour plus d’informations, consultez Concurrence Wi-Fi AP/AP .

Évitement des canaux coex Wi-Fi/cellulaire

Android 12 introduit la fonction d'évitement des canaux coex Wi-Fi/cellulaire , qui identifie et empêche l'utilisation de canaux Wi-Fi dangereux en cas d'interférences entre les canaux cellulaires. Cela inclut des interfaces telles que STA, SoftAp, Wi-Fi Direct (P2P), Wi-Fi Aware (NAN).

Améliorations du protocole de sécurité Wi-Fi

Android 12 introduit la prise en charge du mode de transition WPA3 Hash-to-Element (H2E), du mode de transition WPA2/WPA3-Enterprise et de l'indication de désactivation de la transition.

Pour plus d'informations, consultez WPA3 et Wi-Fi Enhanced Open .

Concurrence Wi-Fi STA/STA

Android 12 introduit la fonctionnalité de simultanéité Wi-Fi STA/STA, qui permet aux appareils de se connecter simultanément à deux réseaux Wi-Fi.

Pour plus d’informations, consultez Concurrence Wi-Fi STA/STA .

Dispositifs

Nouvelles fonctionnalités automobiles d'Android 12

Consultez la rubrique Nouveautés automobiles pour en savoir plus sur ces nouvelles fonctionnalités :

Afficher

Bloquer les contacts non fiables

Pour préserver la sécurité du système et pour une bonne expérience utilisateur, Android 12 ajoute la prise en charge du blocage des événements tactiles non fiables . Cela empêche les applications de consommer des événements tactiles lorsqu'une superposition masque l'application de manière dangereuse.

Notifications de conversation et widgets

Android 11 a ajouté la prise en charge de la personnalisation du comportement et du placement des notifications de conversation dans l'ombre des notifications par priorité et niveau d'alerte, permettant aux conversations d'être marquées comme importantes et de lancer des bulles spécifiques à la conversation dans l'espace de conversation. S'appuyant sur ces fonctionnalités d'Android 11, la fonctionnalité Android 12 Conversation Widget permet aux utilisateurs d'ajouter des widgets de conversation pour les contacts importants à l'écran d'accueil, leur permettant ainsi de reprendre facilement les conversations sans attendre de notification.

Pour plus d'informations, consultez Notifications et widgets de conversation .

La fenêtre est floue

Des API publiques sont disponibles dans Android 12 pour implémenter des effets de flou de fenêtre (tels que le flou d'arrière-plan et le flou derrière). Avec ces API, vous pouvez brouiller tout ce qui se trouve derrière votre propre fenêtre. Vous pouvez créer des fenêtres avec des arrière-plans flous, créant un effet de verre dépoli, ou afficher des fenêtres avec tout l'écran derrière elles flou, créant un effet de profondeur de champ. Vous pouvez également combiner ces deux.

Pour plus d'informations sur cette nouvelle fonctionnalité et comment la mettre en œuvre, consultez la page Flou de fenêtre .

Grossissement de la fenêtre

Dans Android 12, les utilisateurs malvoyants peuvent agrandir n’importe quoi sur leur écran en utilisant la fonction d’agrandissement de la fenêtre. L'agrandissement de la fenêtre permet aux utilisateurs d'agrandir une partie sélectionnée de l'écran, contrairement à l'utilisation d'une fonction de zoom sur un écran entier. La fenêtre sélectionnée peut être glissée sur tout l'écran, ce qui leur permet d'agrandir différentes parties de l'écran selon les besoins.

Pour plus d'informations, voir Loupe de fenêtre .

Entreprise

Mises à jour de l'administration des appareils

Android 12 inclut les mises à jour d'administration des appareils suivantes :

  • Mises à jour gérées de la ségrégation des données de profil. Sur les appareils personnels dotés d'un profil professionnel, Android 12 supprime l'accès aux identifiants matériels de l'appareil (IMEI, MEID, numéro de série) et fournit un identifiant unique, spécifique à l'inscription, qui identifie l'inscription au profil professionnel pour une organisation spécifique. Pour plus de détails, voir Identificateurs d'appareil .

  • Mises à jour du provisionnement des appareils. Android 12 inclut plusieurs modifications dans le provisionnement des appareils. Pour plus de détails et une liste des modifications, consultez Mises à jour Android 12 .

Graphique

Gestion des branchements à chaud dans Composer HAL

Les capacités d'affichage (telles que les modes d'affichage et les types HDR pris en charge) peuvent changer de manière dynamique sur les appareils dotés d'écrans connectés en externe (via HDMI ou DisplayPort), tels que les décodeurs Android TV (STB) et over-the-top (OTT). dispositifs. À partir d'Android 12, les modifications apportées au framework prennent en charge la gestion des connexions à chaud et les capacités d'affichage dynamique.

Pour plus d’informations, consultez Gestion des connexions à chaud dans Composer HAL .

Composants du système modulaire

Android 13 contient plusieurs composants système modulaires nouveaux et mis à jour. Les nouveaux modules sont :

  • ART : Ce module vise à améliorer l'expérience Android en offrant aux utilisateurs les dernières optimisations d'exécution gérées, fonctionnalités et corrections de bugs.

  • Planification des appareils : ce module contient une logique qui détecte si l'appareil est ou non dans un état inactif et peut être redémarré sans interruption de l'utilisateur.

Mises à jour des modules existants :

  • adbd : Mise à jour des limites du module.

  • DocumentsUI : navigation dans les fichiers désactivée.

  • ExtServices : ajout DisplayHashingService et mise à jour de la limite du module.

  • Médias : Ajout d'un nouveau composant multimédia.

  • Runtime NNAPI : mise à jour des limites du module.

  • PermissionController : rendu le module PermissionController complètement modulaire et mise à jour des limites du module.

  • Extensions SDK : mise à jour de la responsabilité du module et ajout d'un nouveau composant.

  • Statsd : Mise à jour des limites du module.

  • Tethering : fonctionnalité ajoutée, mise à jour des limites du module.

  • Données de fuseau horaire : mise à jour du format du package.

  • Wi-Fi : mise à jour de la limite du module.

Médias

Transcodage multimédia compatible

Le transcodage multimédia compatible permet aux appareils d'utiliser des formats multimédias modernes et efficaces en matière de stockage pour la capture vidéo, tels que HEVC, tout en conservant la compatibilité avec les applications. Grâce à cette fonctionnalité, les fabricants d'appareils peuvent utiliser HEVC au lieu d'AVC par défaut pour améliorer la qualité vidéo tout en réduisant les besoins en stockage et en bande passante. Pour plus d’informations, consultez Transcodage multimédia compatible .

Performance

Hibernation des applications

Android 12 offre la possibilité de mettre en veille prolongée les applications que l'utilisateur n'utilise pas pendant quelques mois, similaire à la révocation automatique des autorisations.

Voir Hibernation de l'application pour plus d'informations.

Couche d'abstraction Cgroup

La couche d'abstraction du groupe de contrôle (cgroup) dans Android 12 introduit de nouvelles fonctionnalités, telles que la possibilité de définir des contrôleurs de groupe de contrôle spécifiques comme facultatifs et d'utiliser une nouvelle commande task_profiles qui remplace la commande writepid obsolète. Ce remplacement garantit que les implémentations de groupes de contrôle sous-jacentes n'ont aucun effet sur les couches supérieures lors de la migration des tâches dans les hiérarchies de groupes de contrôle. Android 12 introduit également la prise en charge des profils de tâches par niveau d'API.

Pour plus d’informations, consultez Couche d’abstraction Cgroup .

Autorisations

Autorisations Bluetooth

Android 12 introduit les autorisations Bluetooth suivantes, qui remplacent les autorisations BLUETOOTH et BLUETOOTH_ADMIN :

  • BLUETOOTH_SCAN : permet aux applications de découvrir et de coupler des appareils Bluetooth à proximité.
  • BLUETOOTH_ADVERTISE : permet aux applications de faire de la publicité sur les appareils Bluetooth à proximité.
  • BLUETOOTH_CONNECT : permet aux applications de se connecter aux appareils Bluetooth couplés.

Ces autorisations font partie du nouveau groupe d'autorisations d'exécution NEARBY_DEVICES . Ce groupe d'autorisations permet des cas d'utilisation tels que la connexion à une montre intelligente sans nécessiter l'autorisation d'exécution LOCATION .

Ces nouvelles autorisations sont compatibles avec les applications et aucune modification n'est requise pour les applications exécutées sur Android 11 ou une version antérieure. Pour les applications héritées ciblant Android 11 ou une version antérieure, la plate-forme traduit automatiquement les demandes d'autorisations Bluetooth héritées en demandes de nouvelles autorisations. Lorsqu'une application est mise à niveau vers Android 12 ou version ultérieure, l'application doit demander explicitement les nouvelles autorisations Bluetooth.

Pour plus d'informations sur l'utilisation des autorisations, reportez-vous à Autorisations Bluetooth .

Indicateurs de confidentialité

Android 12 offre aux utilisateurs de la transparence en affichant des indicateurs lorsqu'une application utilise une source de données privée via les autorisations d'utilisation des caméras et des microphones.

App Ops suit à la fois l'état d'activité et le nombre d'appels d'API individuels, et interagit avec les indicateurs de microphone et de caméra dans Android 12 pour indiquer aux utilisateurs quand les applications ont accédé aux données audio et de caméra sur leurs appareils. Lorsque les utilisateurs cliquent sur les indicateurs du microphone ou de la caméra, ils voient quelles applications ont accédé à leurs données.

Cette fonctionnalité est obligatoire pour tous les OEM . Pour plus d'informations, consultez Indicateurs de confidentialité .

Emplacement

À partir d’Android 12, les utilisateurs peuvent demander qu’une application n’obtienne qu’une précision approximative lorsqu’elle accède aux informations de localisation.

Ce changement est conçu pour affecter les applications uniquement lorsqu’elles ciblent Android 12 ou version ultérieure. Cependant, sur les appareils dotés d'une ancienne version du module PermissionController , cette modification affecte toutes les applications, quelle que soit la version du SDK cible.

Durée

Vérifications Dexpreopt et <uses-library>

Android 12 a apporté des modifications au système de compilation anticipée (AOT) des fichiers DEX (dexpreopt) pour les modules Java qui ont des dépendances <uses-library> . Dans certains cas, ces modifications du système de build peuvent interrompre les builds.

Pour plus d'informations sur la façon de se préparer aux casses et les recettes pour les réparer et les atténuer, voir Dexpreopt et <uses-library> Checks .

Essais

Suite de tests de compatibilité (CTS)

Pour Android 12, de nombreux nouveaux modules clés et modifications de test sont introduits pour CTS. Consultez les notes de version CTS pour plus d’informations.

la télé

Service de contrôle HDMI-CEC

Android 12 utilise HDMI-CEC pour contrôler automatiquement les écrans connectés via HDMI lorsqu'un appareil se réveille ou se met en veille.

Pour plus de détails, consultez Service de contrôle HDMI-CEC .

Cadre de tuner

Sous Android 12 :

  • L'interface avec Tuner HAL 1.1 ou supérieur prend en charge la norme DTMB DTV. Les fonctionnalités et paramètres frontaux suivants sont pris en charge :

    • DtmbFrontendCapabilities

    • DtmbFrontendSettings

  • L'API Tuner SDK prend en charge les nouvelles fonctionnalités de Tuner HAL 1.1, qui est une mise à niveau rétrocompatible de Tuner 1.0.

  • android.media.tv.tuner.TunerVersionChecker.getTunerVersion() vérifie la version HAL en cours d'exécution.

Mises à jour

Compression APEX

Après l'installation d'une mise à jour d'un conteneur Android Pony EXpress (APEX), sa version préinstallée n'est plus utilisée, mais occupe la même quantité d'espace mémoire. Cet espace occupé reste indisponible. Dans Android 12, la compression APEX minimise cet impact sur le stockage en utilisant un ensemble de fichiers APEX hautement compressés sur des partitions en lecture seule (telles que la partition /system ). Pour en savoir plus sur la compression APEX dans Android 12, consultez APEX compressés .

Sécurité et commodité de reprise au redémarrage

Android 12 introduit une prise en charge multiclient améliorée et une fonctionnalité de redémarrage basée sur le serveur. Le processus de reprise au redémarrage (RoR) offre une sécurité et une commodité supplémentaires aux utilisateurs, car les mises à jour OTA peuvent être effectuées pendant les périodes d'inactivité de l'appareil, tandis que les fonctionnalités de mise à jour multiclient et basées sur le serveur d'Android 12 fournissent ensemble une sécurité de type matériel de l'appareil.

Pour plus d'informations, consultez Reprise au redémarrage .

Relecture du code PIN SIM avec RoR

Android 12 propose la relecture du code PIN SIM pour une vérification transparente du code PIN après un redémarrage initié par RoR. Le code PIN SIM est rechiffré et stocké chaque fois qu'un utilisateur l'active, le vérifie ou le modifie avec succès.

Pour plus d'informations, voir Relecture SIM-PIN .

Mises à jour A/B virtuelles

Android 12 offre l'option de compression virtuelle A/B sur les partitions capturées. Sous Android 12, les partitions pouvant être mises à jour que le chargeur de démarrage n'utilise pas peuvent être capturées pour économiser de l'espace. Ceux-ci peuvent également être compressés. L'activation de la compression des instantanés dans votre build pour Android 12 permet d'économiser de l'espace sur la partition /data .

La mise en œuvre de Virtual A/B avec la compression des instantanés nécessite des modifications du code spécifique au périphérique. Consultez les modifications et les détails de mise en œuvre sur les pages Présentation de Virtual A/B et Implémentation de Virtual A/B .