Notas de la versión de Android 12 y Android 12

Esta página resume las características principales de las versiones de Android 12 y Android 12 y proporciona enlaces a información adicional. Estos resúmenes de funciones están organizados según la ubicación de la documentación de la función en este sitio.

Arquitectura

Actualizaciones de la clase AlwaysOnHotwordDetector

A partir de Android 12, la clase AlwaysOnHotwordDetector, incluido su método de fábrica, android.service.voice.VoiceInteractionService.createAlwaysOnHotwordDetector() , es una API del sistema ( @SystemApi ) en lugar de una API pública. La clase AlwaysOnHotwordDetector está diseñada para que la usen las aplicaciones del Asistente con privilegios a nivel del sistema, que comúnmente se incluyen con la versión del sistema operativo. En Android 11 y versiones anteriores, la API está protegida por comprobaciones que garantizan que la persona que llama es la aplicación del Asistente actualmente activa, lo que hace que la API no pueda ser utilizada por otras aplicaciones de terceros.

Además, Android 12 incluye mejoras en la función de activación por sonido para mejorar la atribución y el cumplimiento de los permisos relacionados con el uso del micrófono a través de la API de activación por sonido. El uso del micrófono, incluido el uso indirecto, como a través de las clases SoundTriggerManager o AlwaysOnHotwordDetector , se atribuye al paquete de origen (aplicación Asistente) que llama a la clase AlwaysOnHotwordDetector . Esto mejora la privacidad del usuario y la transparencia en los paquetes que usan el micrófono. En Android 11 y versiones anteriores, el uso del micrófono se atribuye al usuario del sistema porque el paquete de origen no usa la API de activación de sonido directamente, sino a través de servicios de nivel superior que residen en el proceso system_server .

El impacto de estos cambios es el siguiente:

  • Las aplicaciones que no son del sistema que usan la clase AlwaysOnHotwordDetector no se compilan con la API de Android 12 porque la API se eliminó de la superficie pública.
  • Las aplicaciones del sistema existentes que usan la clase AlwaysOnHotwordDetector pueden no usar funciones de activación de sonido en tiempo de ejecución. Para solucionar este problema y permitir que estas aplicaciones accedan al micrófono a través del disparador de sonido, declare los RECORD_AUDIO y CAPTURE_AUDIO_HOTWORD para estas aplicaciones.

Compatibilidad con el idioma de Android Rust

Android 12 ahora admite el uso de código Rust. Una nueva sección agregada a la documentación de configuración brinda orientación para desarrollar en Android con Rust.

Para obtener más información sobre Android Rust, varios módulos y ver ejemplos (además de obtener información de configuración de IDE), consulte la nueva sección de Android Rust en Introducción a Android Rust.

Encabezado de la imagen de arranque

Android 12 agrega el uso de la versión 4 del encabezado de la imagen de arranque, que es la imagen de arranque principal para los dispositivos que admiten la arquitectura de imagen de kernel genérica (GKI) . Android 12 también proporciona una firma de boot_signature para verificar la integridad del kernel y el ramdisk. La verificación, que se realiza en VtsSecurityAvbTest , es necesaria para los dispositivos que utilizan la arquitectura GKI.

Para obtener más información, consulte la página Encabezado de la imagen de inicio.

Cambios en la implementación de bootconfig

La función bootconfig en Android 12, un mecanismo para pasar los detalles de configuración de la compilación y el cargador de arranque a Android 12, reemplaza las opciones de línea de comando del kernel androidboot.* que se usan con Android 11 y versiones anteriores. Esta característica proporciona una forma de separar los parámetros de configuración para el espacio de usuario de Android de los del kernel.

Para leer más, visite Implementación de Bootconfig .

Reserva de fuente personalizada

Antes de Android 12, la actualización de los archivos de fuentes instalados en el dispositivo en AOSP (en la partición /system/fonts ) o en las particiones del proveedor (en las particiones /product/fonts o /system/fonts ) requería una actualización del sistema por parte del OEM. Este requisito tiene un impacto significativo en la compatibilidad con emoji. En Android 12, puede usar el servicio del sistema FontManager para administrar los archivos de fuentes instalados y actualizar los archivos de fuentes instalados en el dispositivo sin una actualización del sistema.

Para obtener información sobre esta nueva función, consulte Implementación de respaldo de fuentes personalizadas.

Montones DMA-BUF

En Android 12, GKI 2.0 reemplaza el asignador de ION con montones de DMA-BUF .

Habilitación de filtros locales

Android 12 presenta una característica que puede usar para configurar los idiomas predeterminados del sistema y los filtros locales para nuevos tipos de dispositivos. Esto le permite establecer el valor de la propiedad del filtro y el idioma predeterminado a través de oem/oem.prop durante la calibración de fábrica y configurar restricciones sin incluir el filtro en la imagen del sistema.

Para obtener más información, consulte Habilitación del filtro de configuración regional .

Discos RAM intermitentes del proveedor

Android 12 presenta soporte para flashear vendor_boot de proveedores a través de un comando de inicio rápido que extrae la imagen de inicio de proveedor completa de un dispositivo. El comando solicita a la herramienta de arranque rápido del lado del host que lea el encabezado de arranque del proveedor, vuelva a crear la imagen y actualice la nueva imagen. Este soporte incluye cambios en el cargador de arranque y fastbootd para obtener los datos necesarios, como el tamaño de la partición y el desplazamiento.

Para obtener más información, consulte Discos RAM de proveedores intermitentes en la página Fastboot en el espacio de usuario.

Versión de GKI

A partir de Android 12, la versión de Android de la versión KMI se puede extraer del kernel e inyectar en el manifiesto del dispositivo en el momento de la compilación.

Para obtener más detalles, consulte Control de versiones de GKI .

Estadísticas de memoria histórica de eventos MM

Los dispositivos que se inician en Android 12 pueden utilizar mm_events , un conjunto de estadísticas relacionadas con la memoria que se capturan periódicamente mientras un sistema experimenta presión de memoria. mm_events está integrado con mecanismos de seguimiento perfetto y agrega una sobrecarga de rendimiento mínima. La recopilación de estadísticas permanece activa durante un período de tiempo configurable, capturando estadísticas a intervalos regulares.

Para obtener información sobre cómo utilizar las estadísticas de mm_events , consulte Eventos de MM: estadísticas de memoria histórica .

Restricciones de la ventana de alerta del sistema

Para mejorar la seguridad del ecosistema Android, Android 12 ha dificultado la adquisición del permiso SYSTEM_ALERT_WINDOW y permite que las aplicaciones de terceros bloqueen las superposiciones de otras aplicaciones de terceros.

Las aplicaciones preinstaladas no reciben automáticamente la SYSTEM_ALERT_WINDOW appOp en Android 12. El usuario debe otorgarla explícitamente antes de que una aplicación preinstalada pueda usarla. Las aplicaciones del sistema aún obtienen el permiso de forma predeterminada.

Las aplicaciones de terceros pueden optar por no tener superposiciones de aplicaciones dibujadas sobre ellas. Esto proporciona un mecanismo de protección contra ataques estilo cloak and dagger . Esto está disponible para todas las aplicaciones para que las aplicaciones sensibles a la seguridad, como las aplicaciones bancarias, puedan protegerse. Para usar esta funcionalidad, una aplicación debe declarar el permiso HIDE_OVERLAY_WINDOWS en su manifiesto.

HIDE_NON_SYSTEM_OVERLAY_WINDOWS(signature|privileged) está en desuso en favor de HIDE_OVERLAY_WINDOWS .

Cambios en las particiones de arranque del proveedor

Los dispositivos con Android 12 que usan la versión 4 del encabezado de la imagen de arranque son compatibles con varios ramdisks de proveedores en la partición vendor_boot . Estos fragmentos de ramdisk se concatenan en serie en la sección ramdisk del proveedor. Una tabla ramdisk de proveedor describe el diseño de la sección ramdisk de proveedor y los metadatos de cada fragmento de ramdisk de proveedor.

Debido a los cambios en las particiones de arranque del proveedor en Android 12 y versiones posteriores, no puede usar default como nombre de fragmento de ramdisk del proveedor; está designado como reservado. Su uso para nombrar fragmentos de ramdisk de proveedores no está permitido bajo ninguna circunstancia.

Para obtener más información, consulte Particiones de arranque de proveedores y ramdisks de varios proveedores .

Audio

Enrutamiento de dispositivo de audio combinado

La función de enrutamiento de dispositivos de audio combinados agrega soporte para la transmisión de audio a múltiples dispositivos de audio simultáneamente. Con esta función, las aplicaciones privilegiadas pueden seleccionar múltiples dispositivos preferidos para una estrategia particular a través de las API del sistema. Las aplicaciones pueden descubrir las capacidades de los dispositivos de audio con mayor precisión mediante el uso de las API públicas proporcionadas por esta función.

Para obtener más información, consulte la página Enrutamiento de dispositivos de audio combinados .

Actualizaciones a Audio HAL V7

Para abordar los problemas de compatibilidad con versiones anteriores, Stable AIDL será obligatorio para todos los cambios de HAL a partir de Android T. Para prepararse y mejorar esta futura adopción de AIDL, se realizan cambios significativos en la versión 7 de Audio HAL en Android 12.

Para obtener más información, consulte la sección Actualizaciones de Audio HAL V7 y el ejemplo de política de audio .

Cámara

Entrada de metadatos estáticos de cámara para dispositivos plegables

Android 12 presenta la entrada de metadatos estáticos de la cámara deviceStateOrientationMap que permite que la HAL de la cámara informe al cliente de la cámara y al marco de la cámara sobre los cambios de orientación del sensor desencadenados por un cambio en el estado de pliegue de un dispositivo. Los dispositivos plegables pueden usar opcionalmente una o más cámaras lógicas que se componen de dispositivos físicos con diferentes orientaciones de sensor para diferentes estados de plegado del dispositivo. La entrada de metadatos deviceStateOrientationMap permite que el marco de la cámara garantice que se apliquen las transformaciones de superficie de salida necesarias cuando el ID físico activo cambie en los resultados de la captura.

Para obtener información más detallada, consulte metadata_definitions.xml .

Requisito de soporte de extensión de proveedor de CameraX

En Android 12, los dispositivos compatibles con las extensiones de CameraX deben tener la propiedad ro.camerax.extensions.enabled establecida en true , lo que permite consultar si un dispositivo admite extensiones.

Para obtener más información, consulte Configuración de la biblioteca de proveedores en un dispositivo .

Compatibilidad con sensor de cámara cuádruple bayer

Android 12 presenta las API de la plataforma que permiten que las aplicaciones aprovechen los dispositivos con sensores de cámara de ultra alta resolución, generalmente con patrones cuádruples o no bayer que ofrecen flexibilidad en términos de calidad de imagen y rendimiento con poca luz. Las nuevas API admiten el comportamiento de estos sensores teniendo en cuenta que pueden admitir diferentes configuraciones y combinaciones de transmisión cuando operan en modo de "resolución máxima" en lugar del modo "predeterminado".

Para implementar la compatibilidad con HAL de cámara para sensores de cámara de ultra alta resolución, los fabricantes de dispositivos deben implementar cambios para los siguientes archivos:

Compatibilidad

Requisito de soporte de ADN para tarjetas SIM

A partir de Android 12, todas las tarjetas SIM de los dispositivos utilizados para las pruebas de CTS deben ser compatibles con el almacenamiento de números de marcación abreviada (ADN).

Para obtener más detalles, consulte Pantalla y almacenamiento .

Actualizaciones ITS de la cámara

Android 12 presenta varias actualizaciones de Camera Image Test Suite (ITS), incluidas pruebas nuevas y actualizadas, la refactorización a Python 3 y la adopción del marco de prueba de Mobly.

Para obtener más información, consulte Notas de la versión de Camera Image Test Suite de Android 12 .

Actualizaciones de DDC

El Documento de definición de compatibilidad de Android 12 itera sobre versiones anteriores con actualizaciones para nuevas funciones y cambios en los requisitos para la funcionalidad publicada anteriormente.

Conectividad

Corte de red 5G

Android 12 brinda soporte para la división de redes 5G, el uso de la virtualización de redes para dividir conexiones de red únicas en múltiples conexiones virtuales distintas que brindan diferentes cantidades de recursos para diferentes tipos de tráfico. Esto permite que los operadores de red dediquen una parte de la red a brindar características específicas para un segmento particular de clientes.

Para obtener más información, consulte Segmentación de red 5G .

Perfiles complementarios del administrador de dispositivos

Las aplicaciones destinadas a Android 12 y versiones posteriores pueden usar perfiles de dispositivos complementarios cuando se conectan a un reloj. El uso de un perfil simplifica el proceso de inscripción al agrupar la concesión de un conjunto de permisos específicos del tipo de dispositivo en un solo paso.

Captura de pantalla de un teléfono que muestra una oferta rápida para otorgar permisos

Los permisos incluidos se otorgan a la aplicación complementaria una vez que el dispositivo se conecta y duran solo mientras el dispositivo está asociado. Eliminar la aplicación o eliminar la asociación elimina los permisos.

Para obtener más información, consulte Perfiles de dispositivos complementarios .

Derecho de servicio IMS (TS.43)

Android 12 incluye compatibilidad con la configuración de derechos de servicio TS.43 , una especificación de GSMA que define el paso de verificación de derechos para la activación de servicios que incluyen Voice-over-Wi-Fi (VoWiFi), Voice-over-LTE (VoLTE), SMS over IP (SMSoIP), Activación de servicio en el dispositivo (ODSA) de dispositivos complementarios eSIM (asociados con el dispositivo solicitante) e información del plan de datos.

Para obtener más información, consulte Derechos de servicio de IMS .

Registro único IMS

Android 12 agrega soporte para un modelo de registro único para proporcionar funciones MMTEL y RCS. Este modelo permite que los dispositivos tengan todas las funciones de IMS administradas a través de un único registro de IMS proporcionado por ImsService del dispositivo. En comparación con un modelo de registro dual, en el que se administran múltiples registros IMS en un dispositivo, el registro único reduce el tráfico en la red de un operador y aumenta la confiabilidad.

Para obtener más información, consulte Registro único de IMS .

Detección de zona horaria de ubicación

Android 12 incluye detección de zona horaria de ubicación, una función opcional de detección automática de zona horaria que permite a los dispositivos usar su ubicación y los datos del mapa de zona horaria para determinar la zona horaria actual.

Para obtener más información, consulte Detección de zona horaria de ubicación .

Aleatorización MAC

Android 12 presenta el tipo de aleatorización MAC no persistente, que permite que Android vuelva a aleatorizar las direcciones MAC para ciertas redes al comienzo de cada conexión.

Para obtener más información, consulte Comportamiento de aleatorización de MAC .

Seleccion de red

Android 12 presenta un nuevo mecanismo de selección de red mediante la clase NetworkScore . La selección de red afecta la forma en que Android cumple con las solicitudes de red del sistema y la aplicación, e influye en cómo se elige la red predeterminada para una aplicación.

Para obtener más información, consulte Selección de red .

Estilo de llamada de notificación

A partir de Android 12, recomendamos que las aplicaciones utilicen el nuevo estilo de notificación, CallStyle , para llamadas de voz y videollamadas entrantes y en curso. Este estilo de notificación incluye botones de acción para responder, rechazar y colgar llamadas telefónicas. También usa el mismo estilo centrado en la persona que usan las conversaciones , lo cual es consistente con su comportamiento de clasificar las notificaciones de llamadas en la parte superior de la sombra.

Para que las aplicaciones usen el estilo de notificación CallStyle , deben usar una intención de pantalla completa o un servicio en primer plano (con la autorización asociada). Este estilo clasifica las notificaciones de llamadas en la parte superior de la pantalla. Para las llamadas en curso, este estilo agrega un chip a la barra de estado que permite a los usuarios regresar rápidamente a la aplicación de llamadas.

Para obtener más información, consulte Notificaciones de llamadas.

Actualizaciones de puntos de acceso

Android 12 presenta Passpoint R3 y otras funciones de Passpoint, como los términos y condiciones, las URL de información del lugar, los prefijos de identidad decorados y el manejo inminente de la desautenticación.

Para obtener más información sobre estas funciones, consulte Passpoint (Hotspot 2.0) .

Actualizaciones de la billetera de acceso rápido

En Android 12 o superior, la función de billetera de acceso rápido está disponible desde la pantalla en lugar de desde el menú de encendido como en Android 11. La interfaz de usuario de Wallet ahora se ejecuta en la interfaz de usuario del sistema y se encuentra en frameworks/base/packages/SystemUI/src/com/android/systemui/wallet .

Para obtener más información, consulte Monedero de acceso rápido .

Experiencia de usuario de conectividad simplificada

Android 12 proporciona una experiencia de conectividad simplificada opcional que ayuda a los usuarios a comprender mejor sus conexiones de red, cambiar entre proveedores de Internet y solucionar problemas de conectividad de red.

Para obtener más información, consulte Interfaz de usuario de conectividad .

Prioridad de fuente de tiempo

A partir de Android 12, el marco prioriza la fuente de tiempo del Protocolo de tiempo de red (NTP) sobre la fuente de Identidad de red y zona horaria (NITZ) de forma predeterminada.

Para obtener detalles sobre cómo configurar y probar la prioridad de fuente de tiempo en su dispositivo, consulte Prioridad de fuente de tiempo .

Alternar para deshabilitar 2G

Para mejorar la seguridad, Android 12 presenta un conmutador 2G en Configuración que permite a los usuarios deshabilitar por completo las conexiones celulares 2G. Se debe implementar Radio 1.6 HAL para esta función.

La función de alternar 2G está habilitada de forma predeterminada. Los operadores pueden deshabilitar la función en tiempo de ejecución a través de la bandera KEY_HIDE_ENABLE_2G .

Los fabricantes de dispositivos deben asegurarse de que todas las redes estén disponibles durante las llamadas de emergencia.

Especificaciones de la UICC

En Android 12, para ejecutar las pruebas de API de operador de CTS, el dispositivo debe usar una UICC de desarrollador con privilegios de operador de CTS que cumpla con los requisitos especificados en la última versión de la especificación de perfil de prueba GSMA TS.48 de terceros.

Consulte Preparación de la UICC para obtener más información.

Concurrencia Wi-Fi AP/AP

Android 12 presenta la función de simultaneidad Wi-Fi AP/AP, que permite que los dispositivos muestren un punto de acceso de anclaje dual (AP+AP) en puente.

Para obtener más información, consulte Concurrencia AP/AP Wi-Fi .

Evitar canal coex de Wi-Fi/celular

Android 12 presenta la función de evasión de canales coex de Wi-Fi/celulares , que identifica y evita el uso de canales de Wi-Fi no seguros cuando hay interferencia entre los canales celulares. Esto incluye interfaces como STA, SoftAp, Wi-Fi Direct (P2P), Wi-Fi Aware (NAN).

Mejoras en el protocolo de seguridad Wi-Fi

Android 12 presenta compatibilidad con WPA3 Hash-to-Element (H2E), modo de transición WPA2/WPA3-Enterprise e indicación de desactivación de transición.

Para obtener más información, consulte WPA3 y Wi-Fi Enhanced Open .

Simultaneidad Wi-Fi STA/STA

Android 12 presenta la función de simultaneidad Wi-Fi STA/STA, que permite que los dispositivos se conecten a dos redes Wi-Fi al mismo tiempo.

Para obtener más información, consulte Simultaneidad Wi-Fi STA/STA .

Dispositivos

Android 12 nuevas características automotrices

Consulte Novedades en automoción para obtener más información sobre estas nuevas funciones:

Monitor

Bloquear toques no confiables

Para preservar la seguridad del sistema y brindar una buena experiencia de usuario, Android 12 agrega soporte para bloquear eventos táctiles que no son de confianza. Esto evita que las aplicaciones consuman eventos táctiles donde una superposición oscurece la aplicación de manera insegura.

Notificaciones de conversación y widgets

Android 11 agregó soporte para personalizar el comportamiento y la ubicación de las notificaciones de conversación en el tono de notificaciones por prioridad y nivel de alerta, lo que permite marcar las conversaciones como importantes y lanzar burbujas específicas de conversación en el espacio de conversación. Sobre la base de estas funciones de Android 11, la función Widget de conversación de Android 12 permite a los usuarios agregar widgets de conversación para contactos importantes en la pantalla de inicio, lo que les permite reanudar conversaciones fácilmente sin esperar una notificación.

Para obtener más información, consulte Notificaciones de conversación y widgets .

Desenfoques de ventana

Las API públicas están disponibles en Android 12 para implementar efectos de desenfoque de ventana (como desenfoque de fondo y desenfoque detrás). Con estas API, puede difuminar lo que esté detrás de su propia ventana. Puede crear ventanas con fondos borrosos, creando un efecto de vidrio esmerilado, o mostrar ventanas con toda la pantalla detrás de ellas borrosa, creando un efecto de profundidad de campo. También puedes combinar estos dos.

Para obtener más información sobre esta nueva función y cómo implementarla, consulte la página Desenfoques de ventana .

Ampliación de ventana

En Android 12, los usuarios con problemas de visión pueden ampliar cualquier cosa en su pantalla mediante la función de ampliación de ventana. La ampliación de ventana permite a los usuarios ampliar una parte seleccionada de la pantalla, a diferencia de utilizar una función de zoom en una pantalla completa. La ventana seleccionada se puede arrastrar por toda la pantalla, lo que les permite ampliar diferentes partes de la pantalla según sea necesario.

Para obtener más información, consulte Lupa de ventana .

Empresa

Actualizaciones de administración de dispositivos

Android 12 incluye las siguientes actualizaciones de administración de dispositivos:

  • Actualizaciones de segregación de datos de perfil administrados. En dispositivos personales con un perfil de trabajo, Android 12 elimina el acceso a los identificadores de hardware del dispositivo (IMEI, MEID, número de serie) y proporciona una identificación única específica de inscripción que identifica la inscripción del perfil de trabajo para una organización específica. Para obtener más información, consulte Identificadores de dispositivos .

  • Actualizaciones de aprovisionamiento de dispositivos. Android 12 incluye varios cambios en el aprovisionamiento de dispositivos. Para obtener detalles y una lista de cambios, consulte Actualizaciones de Android 12 .

Gráficos

Manejo de conexión en caliente en Composer HAL

Las capacidades de visualización (como los modos de visualización y los tipos de HDR admitidos) pueden cambiar dinámicamente en los dispositivos que tienen pantallas conectadas externamente (a través de HDMI o DisplayPort), como los decodificadores (STB) y over-the-top (OTT) de Android TV. dispositivos. Desde Android 12 en adelante, los cambios en el marco admiten el manejo de conexión en caliente y las capacidades de visualización dinámica.

Para obtener más información, consulte Manejo de hot plug en Composer HAL .

Componentes del sistema modular

Actualizaciones del módulo principal

Android 12 presenta dos nuevos módulos, ART y Device Scheduling .

Muchos módulos existentes se actualizan en Android 12. Consulte Actualizaciones en Android 12 para obtener más detalles.

ARTE

Android 12 o superior es compatible con el módulo ART , cuyo objetivo es mejorar la experiencia de Android al ofrecer a los usuarios las últimas optimizaciones de tiempo de ejecución administrado, características y correcciones de errores.

Programación de dispositivos

Android 12 o superior es compatible con el módulo de programación de dispositivos , que contiene una lógica que detecta si el dispositivo está en estado inactivo o no, y se puede reiniciar sin interrupciones para el usuario.

Medios de comunicación

Transcodificación de medios compatibles

La transcodificación de medios compatibles permite que los dispositivos usen formatos de medios modernos y de almacenamiento eficiente para la captura de video, como HEVC, mientras mantienen la compatibilidad con las aplicaciones. Con esta función, los fabricantes de dispositivos pueden usar HEVC en lugar de AVC de manera predeterminada para mejorar la calidad del video y reducir los requisitos de almacenamiento y ancho de banda. Para obtener más información, consulte Transcodificación de medios compatibles .

Actuación

Hibernación de la aplicación

Android 12 ofrece la capacidad de hibernar aplicaciones que el usuario no usa durante algunos meses, similar a la revocación automática de permisos.

Consulte Hibernación de la aplicación para obtener más información.

Capa de abstracción de Cgroup

La capa de abstracción del grupo de control (cgroup) en Android 12 presenta nuevas funciones, como la capacidad de definir controladores cgroup específicos como opcionales y usar un nuevo comando task_profiles que reemplaza el comando obsoleto writepid . Este reemplazo garantiza que las implementaciones de cgroup subyacentes no tengan efecto en las capas superiores al migrar tareas en jerarquías de cgroup. Android 12 también presenta soporte para perfiles de tareas por nivel de API.

Para obtener más información, consulte Capa de abstracción de Cgroup .

permisos

permisos de Bluetooth

Android 12 presenta los siguientes permisos de Bluetooth, que reemplazan los permisos BLUETOOTH y BLUETOOTH_ADMIN :

  • BLUETOOTH_SCAN : permite que las aplicaciones descubran y emparejen dispositivos Bluetooth cercanos.
  • BLUETOOTH_ADVERTISE : permite que las aplicaciones se anuncien en dispositivos Bluetooth cercanos.
  • BLUETOOTH_CONNECT : permite que las aplicaciones se conecten a dispositivos Bluetooth emparejados.

Estos permisos forman parte del nuevo grupo de permisos de tiempo de ejecución NEARBY_DEVICES . Este grupo de permisos habilita casos de uso como conectarse a un reloj inteligente sin requerir el permiso de tiempo de ejecución LOCATION .

Estos nuevos permisos son compatibles con las aplicaciones y no se requieren cambios para las aplicaciones que se ejecutan en Android 11 o inferior. Para las aplicaciones heredadas destinadas a Android 11 o versiones anteriores, la plataforma traduce automáticamente las solicitudes de los permisos de Bluetooth heredados en solicitudes de los nuevos permisos. Cuando una aplicación se actualiza para apuntar a Android 12 o superior, la aplicación debe solicitar los nuevos permisos de Bluetooth de forma explícita.

Para obtener más información sobre el uso de los permisos, consulte Permisos de Bluetooth .

Indicadores de privacidad

Android 12 brinda a los usuarios transparencia al mostrar indicadores cuando una aplicación usa una fuente de datos privada a través de los permisos de operación de la aplicación de las cámaras y el micrófono.

App Ops rastrea tanto el estado de la actividad como la cantidad de llamadas API individuales, e interactúa con los indicadores del micrófono y la cámara en Android 12 para mostrar a los usuarios cuándo las aplicaciones han accedido a los datos de audio y cámara en sus dispositivos. Cuando los usuarios hacen clic en los indicadores del micrófono o de la cámara, ven qué aplicaciones han accedido a sus datos.

Esta función es obligatoria para todos los OEM . Para obtener más información, consulte Indicadores de privacidad .

Ubicación

A partir de Android 12, los usuarios pueden solicitar que una aplicación obtenga solo una precisión aproximada cuando accede a la información de ubicación.

Este cambio está diseñado para afectar las aplicaciones solo cuando se dirigen a Android 12 o superior. Sin embargo, en los dispositivos que tienen una versión anterior del módulo PermissionController , este cambio afecta a todas las aplicaciones, independientemente de la versión del SDK de destino.

tiempo de ejecución

Comprobaciones de Dexpreopt y <uses-library>

Android 12 tiene cambios en el sistema de compilación para la compilación anticipada (AOT) de archivos DEX (dexpreopt) para módulos Java que tienen dependencias <uses-library> . En algunos casos, estos cambios en el sistema de compilación pueden interrumpir las compilaciones.

Para obtener información sobre cómo prepararse para las roturas y recetas para solucionarlas y mitigarlas, consulte Comprobaciones de Dexpreopt y <uses-library> .

Pruebas

Conjunto de pruebas de compatibilidad (CTS)

Para Android 12, se introducen muchos módulos clave nuevos y cambios de prueba para CTS. Consulte las notas de la versión de CTS para obtener más información.

TELEVISOR

Servicio de control HDMI-CEC

Android 12 usa HDMI-CEC para controlar automáticamente las pantallas conectadas por HDMI cuando un dispositivo se activa o se duerme.

Para más detalles, consulte Servicio de control HDMI-CEC .

marco sintonizador

En Android 12:

  • La interfaz con Tuner HAL 1.1 o superior es compatible con el estándar DTMB DTV. Se admiten las siguientes capacidades y configuraciones de frontend:

    • DtmbFrontendCapabilities

    • DtmbFrontendSettings

  • La API de Tuner SDK admite nuevas funciones en Tuner HAL 1.1, que es una actualización de versión compatible con versiones anteriores de Tuner 1.0.

  • android.media.tv.tuner.TunerVersionChecker.getTunerVersion() comprueba la versión HAL en ejecución.

Actualizaciones

compresión APEX

Después de instalar una actualización de un contenedor Android Pony EXpress (APEX), su versión preinstalada ya no se usa, pero ocupa la misma cantidad de espacio de memoria. Ese espacio ocupado sigue sin estar disponible. En Android 12, la compresión APEX minimiza este impacto en el almacenamiento mediante el uso de un conjunto altamente comprimido de archivos APEX en particiones de solo lectura (como la partición /system ). Para leer sobre la compresión APEX en Android 12, consulte APEX comprimidos .

Seguridad y conveniencia de reanudar al reiniciar

Android 12 presenta compatibilidad multicliente mejorada y funcionalidad de reinicio basada en servidor. El proceso de reanudación al reiniciar (RoR) brinda mayor seguridad y comodidad a los usuarios porque las actualizaciones OTA se pueden realizar durante los tiempos de inactividad del dispositivo, mientras que las funcionalidades de actualización multicliente y basada en servidor de Android 12 brindan seguridad a nivel de hardware del dispositivo.

Para obtener más información, consulte Reanudar al reiniciar .

Reproducción de PIN de SIM con RoR

Android 12 cuenta con la reproducción de SIM-PIN para una verificación perfecta del código PIN después de un reinicio iniciado por RoR. El PIN de la SIM se vuelve a cifrar y almacena cada vez que un usuario lo habilita, verifica o modifica con éxito.

Para obtener más información, consulte Reproducción de SIM-PIN .

Actualizaciones virtuales A/B

Android 12 ofrece la opción de compresión A/B virtual en particiones instantáneas. En Android 12, las particiones actualizables que el cargador de arranque no usa se pueden tomar instantáneas para ahorrar espacio. Estos también se pueden comprimir. Habilitar la compresión de instantáneas en su compilación para Android 12 ahorra espacio en la partición /data .

La implementación de Virtual A/B con compresión de instantáneas requiere cambios en el código específico del dispositivo. Consulte los cambios y los detalles de implementación en las páginas Descripción general de Virtual A/B e Implementación de Virtual A/B .