Lanzamiento de la plataforma móvil Android 14

La compañía Google ha publicado el lanzamiento de la plataforma móvil abierta Android 14. Los códigos fuente asociados a esta nueva versión se encuentran en el repositorio Git del proyecto (rama android-14.0.0_r1). Las actualizaciones de firmware están preparadas para los dispositivos de la serie Pixel. Se prevé que posteriormente se preparen las actualizaciones de firmware para los teléfonos inteligentes de marcas como Samsung Galaxy, iQOO, Nothing, OnePlus, Oppo, Realme, Sharp, Sony, Tecno, vivo y Xiaomi. Además, se han creado compilaciones universales GSI (Imágenes de Sistema Genéricas) adecuadas para diferentes dispositivos basados en arquitecturas ARM64 y x86_64.

Novedades principales:

  • La plataforma incluye ahora el almacenamiento Health Connect, que anteriormente se ofrecía como un paquete separado a través de Google Play. Health Connect proporciona un almacenamiento centralizado de datos desde pulseras de fitness y otros dispositivos relacionados con la salud del usuario, y permite el acceso compartido de diferentes aplicaciones a los datos de salud. El acceso a la configuración de Health Connect ahora se proporcionará a través del configurador incorporado de la plataforma; por ejemplo, a través de la configuración de privacidad, se podrá gestionar a qué datos de salud pueden acceder aplicaciones específicas. Además, Health Connect ha agregado soporte para guardar información sobre la ruta recorrida durante el entrenamiento (el usuario define el intervalo de tiempo para el que se guardará la lista de puntos de ruta). La ruta se puede visualizar en un mapa y, si se desea, se puede enviar para su procesamiento a otras aplicaciones, previa confirmación explícita de la operación por parte del usuario.
    Lanzamiento de la plataforma móvil Android 14
  • Se han ampliado los medios para confirmar el acceso a la información sobre la ubicación. En el diálogo de solicitud de confirmación para el acceso a la ubicación se ha agregado una nueva sección con información sobre cuándo la aplicación está transmitiendo datos de ubicación (acceso denegado, permitir solo una vez y permitir en cada ejecución de la aplicación), así como detalles sobre dónde obtener información adicional sobre el acceso a los datos transmitidos.
    Lanzamiento de la plataforma móvil Android 14
  • Se ha implementado un sistema de notificación periódica (una vez al mes) que alerta sobre cambios en las aplicaciones que tienen acceso a la ubicación y los métodos de transmisión de datos a terceros (por ejemplo, se alerta cuando una aplicación comienza a utilizar datos de ubicación para mostrar publicidad).
    Lanzamiento de la plataforma móvil Android 14
  • Al trabajar con aplicaciones, se ha implementado una sugerencia más notable con una flecha hacia atrás, mostrada para facilitar la comprensión de la posibilidad de usar el gesto de pantalla para regresar.
    Lanzamiento de la plataforma móvil Android 14
  • En el mecanismo de Sharesheet, utilizado para enviar datos (como imágenes o enlaces) fuera de la aplicación o a otro usuario, se ha implementado la capacidad de agregar acciones personalizadas. Por ejemplo, se puede definir una lista propia de manejadores ChooserAction, que muestran las aplicaciones y usuarios a los que se puede enviar. Además, se ha ampliado el rango de señales utilizadas para clasificar los destinos para el envío directo de datos.
    Lanzamiento de la plataforma móvil Android 14
  • Se ha proporcionado la posibilidad de otorgar permisos parciales para el acceso solo a las fotos y videos seleccionados por el usuario (READ_MEDIA_VISUAL_USER_SELECTED; los archivos a los que se concede acceso son seleccionados por el usuario a través de la interfaz de Photo picker durante el diálogo de solicitud de permisos). Después de que la aplicación se transfiera a segundo plano o se cierre, el permiso otorgado por el usuario se revoca automáticamente. En el diálogo de confirmación de permisos de acceso de las aplicaciones a archivos multimedia, ahora existe la posibilidad de otorgar acceso solo a las fotos o videos seleccionados.
    Lanzamiento de la plataforma móvil Android 14
  • Se ha añadido una sección en el configurador para anular la configuración de preferencias regionales, como las unidades de medida de temperatura, el primer día de la semana y el sistema de numeración. Por ejemplo, un europeo que viva en EE. UU. puede configurar el uso de grados Celsius para mostrar la temperatura en lugar de grados Fahrenheit y considerar el lunes como el comienzo de la semana en lugar del domingo.
    Lanzamiento de la plataforma móvil Android 14
  • Se han ampliado las capacidades de escalado de fuentes; el nivel máximo de escalado de fuentes se ha incrementado del 130% al 200%, y para que el texto no se vea demasiado grande al aumentar, se aplica automáticamente un cambio no lineal en el nivel de escalado (el texto ya grande se agranda menos que el pequeño), lo que permitirá lograr una legibilidad óptima para personas con problemas de visión sin el riesgo de distorsiones en el diseño de la interfaz.
    Lanzamiento de la plataforma móvil Android 14
  • El soporte para grabación de video con alto rango dinámico (HDR) que apareció en la anterior versión se ha ampliado con la capacidad de recibir información adicional de la cámara, lo que permite guardar imágenes en el formato "Ultra HDR", que utiliza 10 bits por canal para codificar el color. El formato Ultra HDR es completamente compatible con JPEG, lo que permite a las aplicaciones trabajar con imágenes HDR sin modificaciones y, si es necesario, mostrarlas utilizando el rango dinámico estándar. La salida en modo HDR se realiza automáticamente por la plataforma cuando se activa el soporte HDR en el manifiesto de la aplicación o al llamar a Window.setColorMode. Para el renderizado separado de Ultra HDR mediante OpenGL o Vulkan, se puede usar la clase Gainmap.
    Lanzamiento de la plataforma móvil Android 14
  • Se limitan los tipos de aplicaciones que pueden mostrar notificaciones de pantalla completa cuando la pantalla está bloqueada. Estas notificaciones están diseñadas para atraer la atención hacia información que requiere una respuesta inmediata, como la llegada de una llamada entrante o la activación de una alarma, por lo que los permisos para la visualización de tales notificaciones ahora estarán restringidos a aplicaciones de llamadas y alertas.
  • Se ha mejorado la gestión de la animación que indica la transición entre diferentes pantallas (hojas) en la aplicación mediante un gesto deslizable que mueve el contenido. Se han añadido nuevos componentes para la animación del cambio entre pantallas inferiores y laterales, así como para invocar la búsqueda. Se ha implementado una API para crear efectos de transición personalizados en la aplicación.
  • Se ha actualizado el conjunto de extensiones para la cámara (Camera Extensions), que ahora permite utilizar algoritmos de procesamiento de imágenes más prolongados y que requieren intensivos cálculos, como por ejemplo, para mejorar la calidad de las fotos tomadas en condiciones de poca luz. Se han incorporado características para predecir retrasos en el procesamiento de la imagen, obtener información sobre el progreso del procesamiento y rápida obtención de un borrador de la toma antes de finalizar la preparación de la imagen final. Se ha implementado un modo de vista previa más optimizado y eficiente energéticamente en SurfaceView. Durante el uso de extensiones se ha asegurado el soporte táctil para el enfoque y el zoom.
  • Se ha añadido soporte para utilizar las capacidades integradas de la cámara para escalar y recortar imágenes RAW transmitidas.
  • Para los auriculares con cable conectados a través de USB, se ha añadido la posibilidad de aplicar formatos de audio sin pérdida de calidad (lossless). Se ha añadido la clase AudioMixerAttributes en la API, que permite enviar audio directamente al dispositivo sin mezcla, ajuste de volumen ni procesamiento de efectos.
  • Se ha implementado la clase Mesh en la API gráfica, permitiendo crear variantes personalizadas de mallas poligonales con sombreadores de vértices y fragmentos escritos en AGSL.
  • Se ha añadido la posibilidad de aceleración por hardware para el renderizado en el búfer, realizada a través de la clase HardwareBufferRenderer.
  • En la clase Path, que permite crear gráficos vectoriales basados en contornos geométricos compuestos, se ha añadido soporte para la interpolación entre contornos con estructuras similares para crear un efecto de morphing y el uso del iterador PathIterator para recorrer secuencialmente todos los segmentos del contorno.
  • Se han ampliado las capacidades para vincular configuraciones de idiomas individuales a diferentes aplicaciones. Se ha añadido la posibilidad de definir una lista de idiomas que se mostrarán en el configurador de Android al seleccionar el idioma para una aplicación específica.
  • Se han ampliado las áreas en las que el sistema muestra información relacionada con la privacidad, definida por el desarrollador en el formulario de Play Console, como la política sobre la entrega de datos a terceros. Por ejemplo, ahora esta información se muestra en el diálogo de solicitud de permisos.
  • En las aplicaciones que utilizan controladores que funcionan en segundo plano, ahora es obligatorio indicar el tipo de servicio en segundo plano. Durante su funcionamiento, el sistema verifica la conformidad del tipo de servicio indicado, los permisos solicitados y la API utilizada. Por ejemplo, si una aplicación indica que el tipo de servicio en segundo plano es FOREGROUND_SERVICE_TYPE_LOCATION, se implicará que pueden solicitarse los permisos ACCESS_COARSE_LOCATION o ACCESS_FINE_LOCATION.
  • Se han realizado cambios para mejorar la seguridad: Se prohibió a las aplicaciones enviar solicitudes de intent a ciertos componentes internos de la plataforma. El código cargado dinámicamente ahora debe marcarse con un atributo que dé acceso solo en modo de lectura. En las funciones ZipFile(String) y ZipInputStream.getNextEntry(), se prohibió el procesamiento de archivos zip cuyas rutas comienzan con el carácter «/» o contienen la secuencia «..». Se restringió la ejecución de tareas desde controladores en segundo plano y se actualizaron las restricciones en el ámbito de las APIs no proporcionadas en el SDK.
  • Al conectar un dispositivo por USB a una computadora de escritorio, además de los modos de interacción disponibles anteriormente, como transferencia de archivos, carga, compartición de Internet, etc., ahora es posible utilizar el smartphone como cámara web (modo UVC, USB Video Class). Por defecto, esta opción está desactivada, pero puede ser activada si se tiene acceso root.
  • Continúa la mejora del funcionamiento de la plataforma en tabletas y dispositivos con pantallas plegables. Se proporcionan bibliotecas que permiten predecir eventos relacionados con el movimiento del cursor y que ofrecen baja latencia al trabajar con stylus. Se proporcionan plantillas de interfaz para pantallas grandes que consideran aplicaciones como redes sociales, comunicación, contenido multimedia, lectura y compras.
  • Se añadió un permiso separado para permitir que las aplicaciones inicien acciones mientras la aplicación se encuentra en segundo plano. La activación mientras está en segundo plano está limitada para no distraer al usuario mientras trabaja con la aplicación actual. A las aplicaciones activas se les proporciona más posibilidades de controlar la activación de acciones por otras aplicaciones con las que interactúan.
  • Se ha optimizado el sistema de gestión de memoria para una asignación de recursos más racional para las aplicaciones ejecutadas en segundo plano. Después de unos segundos de poner la aplicación en estado de caché, el trabajo en segundo plano se limita a interactuar con APIs que gestionan el ciclo de vida de la aplicación, como API Foreground Services, JobScheduler y WorkManager.
  • Las notificaciones marcadas con la bandera FLAG_ONGOING_EVENT ahora se pueden rechazar en dispositivos con la pantalla desbloqueada. Si el dispositivo está en modo de bloqueo de pantalla, dichas notificaciones permanecerán inrechazables. También permanecerán inrechazables las notificaciones que son importantes para el funcionamiento del sistema.
  • Se han añadido nuevos métodos en la API PackageInstaller: requestUserPreapproval(), que permite al catálogo de aplicaciones posponer la descarga de paquetes APK hasta obtener la confirmación del usuario para la instalación; setRequestUpdateOwnership(), que permite asignar a la instalación futura las operaciones de actualización de la aplicación; setDontKillApp(), que permite establecer capacidades adicionales para la aplicación mientras se trabaja con el programa. En la API InstallConstraints, se ha proporcionado a los instaladores la posibilidad de activar la instalación de actualizaciones de la aplicación en momentos en que la aplicación no se está utilizando.
  • Se ha continuado mejorando el funcionamiento de la plataforma en tabletas y dispositivos con pantallas plegables. Se han actualizado las recomendaciones para el desarrollo de aplicaciones para dispositivos con pantallas grandes y se han añadido plantillas de interfaz estándar para pantallas grandes, tomando en cuenta aplicaciones como redes sociales, comunicación, contenido multimedia, lectura y compras. Se ha propuesto un lanzamiento preliminar del SDK Cross device con herramientas para el desarrollo de aplicaciones que funcionen correctamente con diferentes tipos de dispositivos (smartphones, tabletas, televisores inteligentes, etc.) y diferentes factores de forma.
  • Se ha optimizado la coordinación de la ejecución de trabajos en segundo plano que consumen muchos recursos, como la carga de archivos grandes a través de una conexión Wi-Fi. Se han realizado cambios en la API para el inicio de servicios prioritarios (Foreground Service) y la programación de tareas (JobScheduler), a los que se ha añadido nueva funcionalidad para trabajos iniciados por el usuario relacionados con la transferencia de datos. Se han introducido requisitos para especificar el tipo de servicios prioritarios que se están iniciando (trabajo con la cámara, sincronización de datos, reproducción de datos multimedia, seguimiento de ubicación, acceso al micrófono, etc.). Se ha simplificado la definición de las condiciones para activar la carga de datos, por ejemplo, para cargar solo con acceso a través de Wi-Fi.
  • El sistema interno de entrega de mensajes de difusión a las aplicaciones está optimizado para reducir el consumo de energía y mejorar la capacidad de respuesta. Se ha mejorado la recepción de flujos de mensajes registrados por las aplicaciones: los mensajes pueden colocarse en cola, combinarse (por ejemplo, una serie de mensajes BATTERY_CHANGED se agregará en uno) y entregarse solo después de que la aplicación salga del estado de caché.
  • Se ha aumentado el límite en el número máximo de aplicaciones en caché, lo que ha permitido reducir el número de aplicaciones que se inician en modo 'frío' (es decir, no almacenadas en memoria y que se inician más lentamente). Para dispositivos con 8 GB de RAM, tras el cambio de límites, el número de inicios 'fríos' de aplicaciones se redujo en un 20%, y para 12 GB, en un 30%.
  • El uso de la función de ejecución de operaciones a exactamente a tiempo en las aplicaciones ahora requiere la obtención de un permiso separado SCHEDULE_EXACT_ALARM, ya que la aplicación de esta funcionalidad puede afectar negativamente la duración de la batería y provocar un aumento en el consumo de recursos (para tareas programadas, se recomienda usar activación en un tiempo aproximado). A las aplicaciones con implementación de calendario y reloj que utilicen la activación exacta se les debe otorgar el permiso USE_EXACT_ALARM al instalarse. Las publicaciones en el catálogo de Google Play de aplicaciones con el permiso USE_EXACT_ALARM están permitidas solo para programas con implementación de despertador, temporizador y calendario con notificaciones de eventos.
  • Se ha proporcionado la opción de establecer configuraciones de idioma vinculadas a aplicaciones específicas. El desarrollador de la aplicación ahora puede modificar los parámetros localeConfig mediante la llamada a LocaleManager.setOverrideLocaleConfig para definir la lista de idiomas que se mostrarán para la aplicación en la interfaz de configuración de Android.
  • Se ha añadido la API de Inflección Gramatical para simplificar la adición de traducciones de elementos de interfaz que consideren lenguas con sistemas de género.
  • Para evitar la interceptación de solicitudes de intent por aplicaciones maliciosas, en la nueva versión se prohíbe el envío de intents sin una declaración explícita de paquete o componente interno.
  • Se ha aumentado la seguridad de la carga dinámica de código (DCL, Dynamic Code Loading) para evitar la inyección de código malicioso en archivos ejecutables cargados dinámicamente; ahora, estos archivos deben tener permisos que solo permiten la lectura.
  • Se prohíbe la instalación de aplicaciones que declaren una versión de SDK inferior a 23, lo que permitirá bloquear la elusión de restricciones de permisos a través de antiguos API (la versión de API 22 está prohibida, ya que en la versión 23 (Android 6.0) se introdujo un nuevo modelo de gestión de acceso que permite solicitar acceso a recursos del sistema en tiempo real). Las aplicaciones previamente instaladas que utilizan API antiguas continuarán funcionando después de la actualización de Android.
  • Se ha propuesto la API Credential Manager, que permite organizar el inicio de sesión en aplicaciones usando credenciales de proveedores de autenticación externos. Se ha implementado el soporte para la tecnología de Passkeys, que permite al usuario autenticarse sin contraseñas utilizando identificadores biométricos, como huellas dactilares o reconocimiento facial. Se ha mejorado la interfaz para seleccionar cuentas.
  • En Android Runtime (ART) se ha implementado soporte para OpenJDK 17. Las bibliotecas básicas de Java de la plataforma y las herramientas de desarrollo de aplicaciones se han actualizado a OpenJDK 17. Se ha agregado soporte para las características de lenguaje y clases de Java disponibles en OpenJDK 17, como las clases tipo record, cadenas de varias líneas y el patrón de coincidencia en la instrucción 'instanceof'.
  • En Android Runtime se han empleado métodos de compresión más avanzados, lo que ha permitido reducir el tamaño de los archivos en un 9.3% de media sin comprometer el rendimiento.
  • Se ha cambiado la forma de actualizar los certificados de las autoridades certificadoras (CA). Los certificados del sistema ya no estarán vinculados a la firmware, sino que se entregarán en un paquete separado, actualizable a través de Google Play. Este enfoque simplificará el mantenimiento de certificados actualizados y la eliminación de certificados de autoridades comprometidas, además de evitar que los fabricantes de dispositivos manipulen la lista de certificados raíz e independizará el proceso de actualización de certificados de la actualización del firmware. Por otro lado, el nuevo modo de entrega no permitirá al usuario modificar los certificados del sistema, incluso si tiene acceso root en el sistema y controla completamente el firmware.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster