Lanzamiento de la plataforma móvil Android 12

Google ha publicado el lanzamiento de la plataforma móvil abierta Android 12. Los textos fuente asociados con la nueva versión se publican en el repositorio Git del proyecto (rama android-12.0.0_r1). Se preparan actualizaciones de firmware para dispositivos de la serie Pixel, así como para teléfonos inteligentes fabricados por Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo y Xiaomi. Además, se han creado ensamblajes GSI (Generic System Images) universales, adecuados para varios dispositivos basados ​​en arquitecturas ARM64 y x86_64.

Principales novedades:

  • Se propuso una de las actualizaciones de diseño de interfaz más importantes en la historia del proyecto. El nuevo diseño implementa el concepto “Material You”, promocionado como la próxima generación de Material Design. El nuevo concepto se aplicará automáticamente a todas las plataformas y elementos de la interfaz y no requerirá que los desarrolladores de aplicaciones realicen ningún cambio. En julio, está previsto ofrecer a los desarrolladores de aplicaciones la primera versión estable de un nuevo conjunto de herramientas para desarrollar interfaces gráficas: Jetpack Compose.
    Lanzamiento de la plataforma móvil Android 12

    La propia plataforma presenta un nuevo diseño de widget. Los widgets se han hecho más visibles, las esquinas se han redondeado mejor y se ha proporcionado la posibilidad de utilizar colores dinámicos que coincidan con el tema del sistema. Se agregaron controles interactivos como casillas de verificación e interruptores (CheckBox, Switch y RadioButton), por ejemplo, lo que le permite editar listas de tareas en el widget TODO sin abrir la aplicación.

    Lanzamiento de la plataforma móvil Android 12

    Se implementó una transición visual más fluida a las aplicaciones iniciadas desde widgets. La personalización de los widgets se ha simplificado: se ha agregado un botón (un círculo con un lápiz) para reconfigurar rápidamente la ubicación del widget en la pantalla, que aparece cuando se toca el widget durante mucho tiempo.

    Lanzamiento de la plataforma móvil Android 12Lanzamiento de la plataforma móvil Android 12

    Se proporcionan modos adicionales para limitar el tamaño del widget y la capacidad de utilizar el diseño adaptativo de los elementos del widget (diseño responsivo) para crear diseños estándar que cambian según el tamaño del área visible (por ejemplo, puede crear diseños separados para tabletas y teléfonos inteligentes). La interfaz del selector de widgets implementa una vista previa dinámica y la capacidad de mostrar una descripción del widget.

    Lanzamiento de la plataforma móvil Android 12
  • Se agregó la capacidad de adaptar automáticamente la paleta del sistema al color del fondo de pantalla seleccionado: el sistema detecta automáticamente los colores predominantes, ajusta la paleta actual y aplica cambios a todos los elementos de la interfaz, incluido el área de notificación, la pantalla de bloqueo, los widgets y el control de volumen.
  • Se han implementado nuevos efectos animados, como zoom gradual y cambio suave de áreas al desplazarse, aparecer y mover elementos en la pantalla. Por ejemplo, cuando cancelas una notificación en la pantalla de bloqueo, el indicador de tiempo se expande automáticamente y ocupa el espacio que ocupaba anteriormente la notificación.
  • Se ha rediseñado el diseño del área desplegable con notificaciones y configuraciones rápidas. Se han agregado opciones para Google Pay y control del hogar inteligente a la configuración rápida. Al mantener presionado el botón de encendido, aparece el Asistente de Google, al que puedes ordenar que haga una llamada, abra una aplicación o lea un artículo en voz alta. Las notificaciones con contenido especificado por la aplicación se dan de forma general.
    Lanzamiento de la plataforma móvil Android 12
  • Se agregó el efecto de desplazamiento extendido para indicar que el usuario se movió más allá del área de desplazamiento y llegó al final del contenido. Con el nuevo efecto, la imagen del contenido parece estirarse y retroceder. El nuevo comportamiento de fin de desplazamiento está habilitado de forma predeterminada, pero hay una opción en la configuración para volver al comportamiento anterior.
  • La interfaz ha sido optimizada para dispositivos con pantallas plegables.
    Lanzamiento de la plataforma móvil Android 12
  • Se han implementado transiciones de audio más suaves: al cambiar de una aplicación que emite sonido a otra, el sonido de la primera ahora se silencia suavemente y el segundo aumenta suavemente, sin superponer un sonido al otro.
  • Se ha modernizado la interfaz para gestionar las conexiones de red en el bloque de configuración rápida, panel y configurador del sistema. Se ha agregado un nuevo panel de Internet que le permite cambiar rápidamente entre diferentes proveedores y diagnosticar problemas.
    Lanzamiento de la plataforma móvil Android 12
  • Se agregó la capacidad de crear capturas de pantalla que cubren no solo el área visible, sino también el contenido en el área de desplazamiento. La capacidad de mantener el contenido fuera del área visible funciona para todas las aplicaciones que utilizan la clase Ver para la salida. Para implementar soporte para capturas de pantalla con desplazamiento en programas que usan interfaces específicas, se ha propuesto la API ScrollCapture.
    Lanzamiento de la plataforma móvil Android 12
  • Se ha mejorado la función de contenido de pantalla de rotación automática, que ahora puede usar el reconocimiento facial de la cámara frontal para determinar si es necesario girar la pantalla, por ejemplo, cuando una persona está usando el teléfono mientras está acostada. Para garantizar la confidencialidad, la información se procesa sobre la marcha sin almacenamiento intermedio de imágenes. Actualmente, la función solo está disponible en Pixel 4 y teléfonos inteligentes más nuevos.
  • Modo de imagen en imagen mejorado (PIP, imagen en imagen) y mayor suavidad de los efectos de transición. Si habilita la transición automática a PIP con un gesto de inicio (moviendo la parte inferior de la pantalla hacia arriba), la aplicación ahora cambia inmediatamente al modo PIP, sin esperar a que se complete la animación. Se mejoró el cambio de tamaño de las ventanas PIP con contenido que no sea de video. Se agregó la capacidad de ocultar la ventana PIP arrastrándola hacia el borde izquierdo o derecho de la pantalla. Se ha cambiado el comportamiento al tocar una ventana PIP: un toque ahora muestra los botones de control y un doble toque cambia el tamaño de la ventana.
  • Optimizaciones de rendimiento:
    • Se llevó a cabo una optimización significativa del rendimiento del sistema: la carga en la CPU de los principales servicios del sistema disminuyó en un 22%, lo que a su vez condujo a un aumento en la duración de la batería en un 15%. Al reducir la contención de bloqueos, la latencia y la optimización de E/S, se aumenta el rendimiento de la transición de una aplicación a otra y se reduce el tiempo de inicio de la aplicación.

      En PackageManager, cuando se trabaja con instantáneas en modo de solo lectura, la contención de bloqueo se reduce en un 92 %. El motor de comunicación entre procesos de Binder utiliza un almacenamiento en caché ligero para reducir la latencia hasta 47 veces para algunos tipos de llamadas. Rendimiento mejorado para procesar archivos dex, odex y vdex, lo que resulta en tiempos de carga de aplicaciones más rápidos, especialmente en dispositivos con poca memoria. Se ha acelerado el inicio de aplicaciones a partir de notificaciones; por ejemplo, el inicio de Google Photos desde una notificación ahora es un 34% más rápido.

      El rendimiento de las consultas de bases de datos se ha mejorado mediante el uso de optimizaciones en línea en la operación CursorWindow. Para pequeñas cantidades de datos, CursorWindow se ha vuelto un 36% más rápido y para conjuntos de más de 1000 filas, la aceleración puede ser hasta 49 veces.

      Se proponen criterios para clasificar los dispositivos por prestaciones. Según las capacidades de un dispositivo, se le asigna una clase de rendimiento, que luego puede usarse en aplicaciones para limitar la funcionalidad de los códecs en dispositivos de bajo consumo o para manejar contenido multimedia de mayor calidad en hardware potente.

    • Se ha implementado un modo de hibernación de la aplicación, que permite, si el usuario no ha interactuado explícitamente con el programa durante mucho tiempo, restablecer automáticamente los permisos previamente otorgados a la aplicación, detener la ejecución, devolver los recursos utilizados por la aplicación, como la memoria, y bloquear el inicio del trabajo en segundo plano y el envío de notificaciones push. El modo se puede utilizar para la mayoría de las aplicaciones y le permite proteger los datos del usuario a los que los programas olvidados durante mucho tiempo siguen teniendo acceso. Si lo desea, el modo de hibernación se puede desactivar selectivamente en la configuración.
    • Se ha optimizado la animación al girar la pantalla, reduciendo el retraso antes de girar en aproximadamente un 25%.
    • La estructura incluye un nuevo motor de búsqueda de alto rendimiento, AppSearch, que le permite indexar información en el dispositivo y realizar búsquedas de texto completo con resultados de clasificación. AppSearch proporciona dos tipos de índices: para organizar búsquedas en aplicaciones individuales y para buscar en todo el sistema.
    • Se agregó la API del modo de juego y las configuraciones correspondientes que te permiten administrar el perfil de rendimiento del juego; por ejemplo, puedes sacrificar el rendimiento para extender la duración de la batería o usar todos los recursos disponibles para lograr el máximo FPS.
    • Se agregó la función de jugar mientras descargas para descargar recursos del juego en segundo plano durante el proceso de instalación, lo que te permite comenzar a jugar antes de que se complete la descarga. solicitud.
    • Mayor capacidad de respuesta y velocidad de reacción al trabajar con notificaciones. Por ejemplo, cuando un usuario toca una notificación, ahora lo lleva inmediatamente a la aplicación asociada. Las aplicaciones limitan el uso de trampolines de notificación.
    • Llamadas IPC optimizadas en Binder. Al utilizar una nueva estrategia de almacenamiento en caché y eliminar la contención de bloqueos, la latencia se redujo significativamente. En general, el rendimiento de las llamadas de Binder se ha duplicado aproximadamente, pero hay algunas áreas donde se han logrado aceleraciones aún más significativas. Por ejemplo, llamar a refContentProvider() se volvió 47 veces más rápido, releaseWakeLock() 15 veces más rápido y JobScheduler.schedule() 7.9 veces más rápido.
    • Para evitar posibles problemas de rendimiento, las aplicaciones tienen prohibido ejecutar servicios en primer plano mientras se ejecutan en segundo plano, excepto en algunos casos especiales. Para comenzar a trabajar en segundo plano, se recomienda utilizar WorkManager. Para simplificar la transición, se ha propuesto un nuevo tipo de trabajo en JobScheduler, que comienza inmediatamente, tiene mayor prioridad y acceso a la red.
  • Cambios que afectan la seguridad y la privacidad:
    • La interfaz del Panel de privacidad se ha implementado con una descripción general de todas las configuraciones de permisos, lo que le permite comprender a qué datos de usuario tienen acceso las aplicaciones. La interfaz también incluye una línea de tiempo que visualiza el historial de acceso de la aplicación al micrófono, la cámara y los datos de ubicación. Para cada aplicación, puede ver detalles y motivos para acceder a datos confidenciales.
      Lanzamiento de la plataforma móvil Android 12
    • Se han agregado al panel indicadores de actividad del micrófono y la cámara, que aparecen cuando una aplicación accede a la cámara o al micrófono. Cuando hace clic en los indicadores, aparece un cuadro de diálogo con la configuración que le permite determinar qué aplicación está funcionando con la cámara o el micrófono y, si es necesario, revocar permisos.
    • Se han agregado interruptores al bloque emergente de configuración rápida, con los que puede apagar a la fuerza el micrófono y la cámara. Después de apagarlo, los intentos de acceder a la cámara y al micrófono generarán una notificación y se enviarán datos vacíos a la aplicación.
      Lanzamiento de la plataforma móvil Android 12
    • Se agregó una nueva notificación que aparece en la parte inferior de la pantalla cada vez que una aplicación intenta leer el contenido del portapapeles mediante una llamada a la función getPrimaryClip(). Si el contenido del portapapeles se copia en la misma aplicación en la que se agregó, la notificación no aparece.
    • Se agregó un permiso separado BLUETOOTH_SCAN para escanear dispositivos cercanos a través de Bluetooth. Anteriormente, esta capacidad se proporcionaba en función del acceso a la información de ubicación del dispositivo, lo que resultaba en la necesidad de otorgar permisos adicionales a aplicaciones que requerían emparejarse con otro dispositivo a través de Bluetooth.
    • Se ha modernizado el cuadro de diálogo para proporcionar acceso a información sobre la ubicación del dispositivo. El usuario ahora tiene la oportunidad de proporcionar a la aplicación información sobre la ubicación exacta o proporcionar solo datos aproximados, así como limitar la autoridad solo a la sesión activa con el programa (denegar el acceso cuando esté en segundo plano). El nivel de precisión de los datos devueltos al seleccionar una ubicación aproximada se puede cambiar en la configuración, incluso en relación con aplicaciones individuales.
      Lanzamiento de la plataforma móvil Android 12
    • Los desarrolladores de aplicaciones tienen la opción de desactivar las advertencias emergentes que se superponen al contenido. Anteriormente, la capacidad de mostrar ventanas superpuestas se controlaba exigiendo que se verificaran los permisos durante la instalación de aplicaciones que mostraban ventanas superpuestas. No había herramientas disponibles para influir en la superposición de contenidos de aplicaciones cuyas ventanas se superponen. Al utilizar la llamada Window#setHideOverlayWindows(), todas las ventanas superpuestas ahora se ocultarán automáticamente. Por ejemplo, se puede habilitar la ocultación cuando se muestra información particularmente importante, como la confirmación de la transacción.
    • Las aplicaciones reciben configuraciones adicionales para limitar las operaciones de notificación mientras la pantalla está bloqueada. Anteriormente, solo tenía la capacidad de controlar la visibilidad de las notificaciones mientras la pantalla estaba bloqueada, pero ahora puede habilitar la autenticación obligatoria para realizar cualquier acción con las notificaciones mientras la pantalla está bloqueada. Por ejemplo, una aplicación de mensajería puede requerir autenticación antes de eliminar o marcar un mensaje como leído.
    • Se agregó la API PackageManager.requestChecksums() para solicitar y verificar la suma de verificación de una aplicación instalada. Los algoritmos admitidos incluyen SHA256, SHA512 y Merkle Root.
    • El motor web WebView implementa la capacidad de utilizar el atributo SameSite para controlar el procesamiento de cookies. El valor "SameSite=Lax" limita el envío de cookies para subsolicitudes entre sitios, como solicitar una imagen o cargar contenido a través de un iframe desde otro sitio. En el modo "SameSite=Estricto", las cookies no se envían para ningún tipo de solicitud entre sitios, incluidos todos los enlaces entrantes de sitios externos.
    • Seguimos trabajando en la aleatorización de direcciones MAC para eliminar la posibilidad de seguimiento del dispositivo cuando se conecta a una red inalámbrica. Las aplicaciones sin privilegios tienen acceso limitado a la dirección MAC del dispositivo y la llamada a getHardwareAddress() ahora devuelve un valor nulo.
  • Cambios y mejoras de bajo nivel para desarrolladores de aplicaciones:
    • Se agregó la capacidad de adaptar elementos de la interfaz a dispositivos con pantallas redondeadas. Los desarrolladores ahora pueden obtener información sobre los redondeos de la pantalla y ajustar los elementos de la interfaz que caen en áreas de esquinas invisibles. A través de la nueva API RoundedCorner, puede encontrar parámetros como el radio y el centro del redondeo, y a través de Display.getRoundedCorner() y WindowInsets.getRoundedCorner() puede determinar las coordenadas de cada esquina redondeada de la pantalla.
      Lanzamiento de la plataforma móvil Android 12
    • Se ha agregado una nueva API CompanionDeviceService, con la que puede activar aplicaciones que controlan dispositivos complementarios, como relojes inteligentes y rastreadores de actividad física. La API resuelve el problema de iniciar y conectar las aplicaciones necesarias cuando aparece un dispositivo complementario cerca. El sistema activa el servicio cuando un dispositivo está cerca y envía una notificación cuando el dispositivo se desconecta o cuando el dispositivo entra o sale del alcance. Las aplicaciones también pueden usar el nuevo perfil de dispositivo complementario para configurar más fácilmente permisos para unirse a un dispositivo.
    • Sistema de previsión de capacidad mejorado. Las aplicaciones ahora pueden solicitar información sobre el rendimiento total previsto en relación con el operador, la red inalámbrica específica (Wi-Fi SSID), el tipo de red y la intensidad de la señal.
    • La aplicación de efectos visuales comunes, como el desenfoque y la distorsión del color, se ha simplificado y ahora se puede aplicar utilizando la API RenderEffect a cualquier objeto RenderNode o a toda el área visible, incluso en una cadena con otros efectos. Esta característica, por ejemplo, le permite desenfocar una imagen mostrada a través de ImageView sin copiar, procesar y reemplazar explícitamente el mapa de bits, moviendo estas acciones al lado de la plataforma. Además, se propone la API Window.setBackgroundBlurRadius(), con la que se puede difuminar el fondo de una ventana con un efecto de vidrio esmerilado y resaltar la profundidad difuminando el espacio que rodea la ventana.
      Lanzamiento de la plataforma móvil Android 12
    • Herramientas integradas para transcodificar flujos de medios que se pueden usar en entornos con una aplicación de cámara que guarda video en formato HEVC, para garantizar la compatibilidad con aplicaciones que no admiten este formato. Para tales aplicaciones, se ha agregado una función de transcodificación automática al formato AVC más común.
    • Se agregó soporte para el formato de imagen AVIF (AV1 Image Format), que utiliza tecnologías de compresión intracuadro del formato de codificación de video AV1. El contenedor para distribuir datos comprimidos en AVIF es completamente similar a HEIF. AVIF admite imágenes en HDR (alto rango dinámico) y espacio de color de amplia gama, así como en rango dinámico estándar (SDR).
    • Se propone una API OnReceiveContentListener unificada para insertar y mover tipos extendidos de contenido (texto formateado, imágenes, vídeos, archivos de audio, etc.) entre aplicaciones que utilizan diversas fuentes de datos, incluido el portapapeles, el teclado y la interfaz de arrastrar y soltar.
    • Se ha añadido un efecto de retroalimentación táctil, implementado mediante el motor de vibración integrado en los teléfonos, cuya frecuencia e intensidad de vibración depende de los parámetros del sonido emitido actualmente. El nuevo efecto le permite sentir físicamente el sonido y puede usarse para agregar realismo adicional a juegos y programas de sonido.
    • En el modo Inmersivo, en el que el programa se muestra en pantalla completa con los paneles de servicios ocultos, la navegación se simplifica mediante gestos de control. Por ejemplo, ahora se puede navegar por libros, vídeos y fotografías con un solo gesto de deslizar el dedo.
    • Como parte del proyecto Mainline, que le permite actualizar componentes individuales del sistema sin actualizar toda la plataforma, se han preparado nuevos módulos del sistema actualizables además de los 22 módulos disponibles en Android 11. Las actualizaciones afectan a los componentes que no son de hardware y que se descargan a través de Google Play por separado de las actualizaciones de firmware OTA del fabricante. Entre los nuevos módulos que se pueden actualizar a través de Google Play sin actualizar el firmware se encuentran ART (Android Runtime) y un módulo para transcodificación de vídeo.
    • Se ha agregado una API a la clase WindowInsets para determinar la posición de visualización de los indicadores de uso de la cámara y el micrófono (los indicadores pueden superponer controles en programas implementados en pantalla completa y, a través de la API especificada, la aplicación puede ajustar su interfaz).
    • Para dispositivos administrados centralmente, se agregó una opción para evitar el uso de interruptores para silenciar el micrófono y la cámara.
    • Para las aplicaciones CDM (Companion Device Manager) que se ejecutan en segundo plano y que controlan dispositivos complementarios, como relojes inteligentes y rastreadores de actividad física, es posible iniciar servicios en primer plano.
    • En lugar de una edición para dispositivos portátiles, Android Wear, junto con Samsung, decidió desarrollar una nueva plataforma unificada que combine las capacidades de Android y Tizen.
    • Se han ampliado las capacidades de las ediciones de Android para sistemas de información y entretenimiento de automóviles y televisores inteligentes.

    Fuente: opennet.ru

  • Añadir un comentario