Android Nougat ( nombre en código Android N durante el desarrollo) es la séptima versión principal y la decimocuarta versión original del sistema operativo Android . Lanzada por primera vez como una versión de prueba alfa el 9 de marzo de 2016, se lanzó oficialmente el 22 de agosto de 2016, siendo los dispositivos Nexus los primeros en recibir la actualización.
El LG V20 fue el primer teléfono inteligente lanzado con Nougat en 2016.
Nougat introduce cambios notables en el sistema operativo y su plataforma de desarrollo, incluida la capacidad de mostrar varias aplicaciones en pantalla a la vez en una vista de pantalla dividida, compatibilidad con respuestas en línea a las notificaciones y un modo de ahorro de energía Doze ampliado que restringe la funcionalidad del dispositivo una vez que la pantalla ha estado apagada durante un período de tiempo. Además, la plataforma cambió a un entorno Java basado en OpenJDK y recibió compatibilidad con la API de renderizado de gráficos Vulkan y actualizaciones del sistema sin inconvenientes en los dispositivos compatibles.
Nougat recibió críticas positivas. El nuevo formato de notificación de aplicaciones recibió elogios especiales; si bien la interfaz multitarea se consideró un cambio positivo, los críticos notaron que varias aplicaciones eran incompatibles con la función. Los críticos tuvieron experiencias dispares con el modo de ahorro de energía Doze, pero las instalaciones más rápidas de aplicaciones y los ajustes a la interfaz de usuario también recibieron críticas positivas.
En diciembre de 2022 [actualizar], el 4,02 % de los dispositivos ejecutaban Android Nougat, el 1,6 % en 7.1.x y el 2,42 % en 7.0. [5] Android Nougat dejó de recibir soporte y no hubo más actualizaciones de seguridad después de octubre de 2019.
El lanzamiento se llamó internamente "New York Cheesecake". [6] El 9 de marzo de 2016, antes de la conferencia para desarrolladores Google I/O , Google lanzó la primera versión alfa [7] de Android "N" como parte de un nuevo "Programa Beta de Android" destinado a ser probado por desarrolladores y entusiastas antes de su lanzamiento oficial "este verano". Las versiones preliminares para desarrolladores eran compatibles solo con los dispositivos Google Nexus actuales; el 5X , 6P , 6 , 9 , Pixel C y Nexus Player . El "Programa Beta de Android" que se presentó permitió a los evaluadores optar por recibir actualizaciones inalámbricas de las nuevas versiones beta a medida que se lanzaban. [8]
El 13 de abril de 2016, se lanzó la versión preliminar beta 2 de Android N. [9] Google siguió hablando de Android "N" durante la conferencia de prensa de I/O el 18 de mayo de 2016 y presentó su nueva plataforma de realidad virtual , Daydream . En ese momento, se lanzó la versión preliminar beta 3, la primera versión preliminar que se consideró adecuada para una prueba beta pública más amplia. Google también anunció que realizaría un concurso para determinar el nombre de lanzamiento oficial del sistema operativo. [10] [11] [12]
La versión Beta Preview 4 se lanzó el 15 de junio de 2016. [13] [14] El 30 de junio de 2016, Google anunció que el nombre de lanzamiento de N sería " Nougat "; también se confirmó que Nougat sería la versión 7.0 de Android. [15] [16] [17]
La versión beta preliminar final, 5, se lanzó el 18 de julio de 2016. [18]
Android 7.0 se lanzó oficialmente el 22 de agosto de 2016, con Nexus 6 , 5X , 6P , 9 , Nexus Player , Pixel C y General Mobile 4G como los primeros dispositivos en recibir la actualización. [19] Dave Burke, vicepresidente de ingeniería de Android, declaró en agosto de 2016 que las actualizaciones de Nougat se lanzarían trimestralmente como lanzamientos de mantenimiento centrados en "mejoras y refinamientos continuos". [20] El 6 de septiembre de 2016, LG anunció el V20 , el primer teléfono inteligente que se envía con Nougat preinstalado. [21] Google presentó los teléfonos inteligentes Pixel y Pixel XL de primera parte durante un evento centrado en hardware el 4 de octubre de 2016, [22] con los teléfonos Pixel reemplazando a la serie Nexus. [23]
Las actualizaciones de los dispositivos existentes varían según el fabricante y el operador, y el soporte del controlador para la versión por parte del fabricante del respectivo sistema en chip de un dispositivo. [24] Los principales fabricantes, incluidos HTC , Sony y Motorola anunciaron sus intenciones de actualizar una gama de sus dispositivos recientes a Nougat. [25] [26] [27] Qualcomm declaró que no soportaría Nougat en dispositivos que usen sus sistemas en chip Snapdragon 800 y 801 por razones no reveladas. Aunque se lanzaron versiones preliminares para desarrolladores de Nougat para el dispositivo, Sony declaró que no actualizaría el Xperia Z3 (que usa el Snapdragon 801) a la versión final debido a "limitaciones de plataforma imprevistas". Se informó que el conjunto de pruebas de compatibilidad de Google (cuyas pruebas deben aprobarse para recibir la certificación oficial) especificó que todos los dispositivos que ejecutan Nougat deben admitir las API de gráficos Vulkan u OpenGL ES 3.1 , ninguna de las cuales es compatible con el núcleo de gráficos Adreno 330 del dispositivo. [24] [28] Se supone que el Fairphone 2 es el único dispositivo con el chipset Qualcomm Snapdragon 801 que ofrece soporte oficial para Android 7.1.2, cumpliendo con su esfuerzo por aumentar la longevidad para un dispositivo más sostenible. [29]
Una actualización posterior al lanzamiento conocida como Android 7.1 se cargó previamente en los teléfonos inteligentes Pixel y Pixel XL de Google lanzados en octubre de 2016; la nueva versión agregó soporte para la plataforma Google Daydream VR, teclados de imágenes, soporte expandido para emojis (incluidas versiones masculinas y femeninas), soporte para acciones que se mostrarán en los menús de los accesos directos de las aplicaciones de la pantalla de inicio y otras características nuevas. Una vista previa de 7.1 para dispositivos Nexus existentes se lanzó a través del Programa Beta de Android más tarde en el mes, [30] y se lanzó oficialmente como Android 7.1.1 el 5 de diciembre de 2016. [31] [32] [33] A partir de 7.1.1, el Nexus 6 y el Nexus 9 se consideraron al final de su vida útil y no recibieron más actualizaciones. [34]
Android 7.1.2 se lanzó en abril de 2017 y proporcionó varias mejoras y mejoras menores de funcionalidad a los dispositivos de las marcas Nexus y Pixel. [34] [35]
Nougat rediseña la barra de notificaciones, que ahora presenta una fila más pequeña de íconos para las configuraciones, reemplaza las tarjetas de notificación con un nuevo diseño de "hoja" y permite respuestas en línea para las notificaciones. También se pueden "agrupar" varias notificaciones de una sola aplicación [8] y hay un mayor control por aplicación sobre las notificaciones [36] .
Se introdujo un modo de visualización de pantalla dividida para teléfonos, en el que se pueden juntar dos aplicaciones para ocupar mitades de la pantalla. También está disponible un modo experimental de múltiples ventanas como función oculta, en el que varias aplicaciones pueden aparecer simultáneamente en la pantalla en ventanas superpuestas. [37] Se agregó compatibilidad con imagen en imagen para Android TV . [38]
El mecanismo de ahorro de energía "Doze" introducido en Android Marshmallow se amplió para incluir un estado que se activa cuando el dispositivo está en funcionamiento y la pantalla ha estado apagada durante un período de tiempo, pero no está inmóvil. En este estado, la actividad de la red está restringida y las aplicaciones tienen "ventanas de mantenimiento" en las que pueden acceder a la red y realizar tareas en segundo plano. Al igual que en Marshmallow, el estado Doze completo se activa si el dispositivo está inmóvil con la pantalla apagada durante un período de tiempo. [8] [39] Un nuevo modo "Data Saver" restringe el uso de datos móviles en segundo plano y puede activar funciones internas en las aplicaciones que están diseñadas para reducir el uso del ancho de banda, como limitar la calidad de la transmisión de medios. [39] [40]
En diciembre de 2015, Google anunció que Android Nougat cambiaría su entorno de ejecución Java del extinto Apache Harmony a OpenJDK , la implementación oficial de código abierto de la plataforma Java mantenida por Oracle Corporation y la comunidad Java. [41] Android Runtime (ART) ahora incorpora un sistema de compilación guiado por perfiles , que utiliza un compilador JIT y perfiles junto con su compilador avanzado actual para optimizar aún más las aplicaciones para el hardware de un dispositivo y otras condiciones en segundo plano. [39]
Nougat introduce un sistema para habilitar actualizaciones automáticas del sistema "sin fisuras", basadas en y compartiendo algo de código con la implementación de una funcionalidad similar en ChromeOS . El sistema utiliza un par de particiones. Durante la fase de desarrollo previa al lanzamiento, se había considerado SquashFS como el sistema de archivos, para ayudar a compensar la sobrecarga de almacenamiento adicional de mantener dos copias de estas particiones. Sin embargo, por razones de rendimiento, en el lanzamiento público de Nougat, los diseñadores finalmente eligieron continuar usando el sistema de archivos ext4 tradicional de Android. [42] El sistema Android se ejecuta desde una partición "en línea", mientras que las actualizaciones se aplican en segundo plano a una partición "fuera de línea" redundante. En el siguiente arranque después de la instalación de una actualización, la partición redundante se designa como activa para arrancar en el sistema operativo actualizado. Este sistema elimina el requisito de que el dispositivo se reinicie en el entorno de recuperación del sistema para aplicar la actualización (lo que evita que el dispositivo se use hasta que se complete la actualización) y también proporciona una copia de seguridad del sistema operativo existente en caso de falla. Google decidió habilitar actualizaciones sin inconvenientes solo para dispositivos enviados con Nougat (o posterior), en lugar de habilitar dispositivos anteriores para que admitan la función después de volver a particionar. [43] [38] Además, debido a los cambios de ART en Nougat, las aplicaciones ya no necesitan volver a compilarse en el primer arranque después de una actualización del sistema. [44]
Developer Preview 2 agregó soporte de plataforma para Vulkan , una nueva API de renderizado 3D de bajo nivel alternativa a OpenGL ES con mayor rendimiento gráfico. [9] [45] [46]
Nougat es la primera versión que incluye soporte para Unicode 9.0, y viene con emojis actualizados, además de soporte para tonos de piel de emoji. [9]
Android 7.1 agrega soporte API nativo para implementar teclados de imágenes; teléfonos multi-punto final; [ aclaración necesaria ] menús de acceso directo y activos de íconos redondeados para aplicaciones en lanzadores; y soporte para la plataforma de realidad virtual Google Daydream . [30] [47] El entorno Daydream incluye un "modo de rendimiento sostenido" para ayudar a los desarrolladores a optimizar las aplicaciones según el perfil térmico de un dispositivo , [39] un nuevo algoritmo de seguimiento de la cabeza que combina la entrada de varios sensores del dispositivo y la integración de notificaciones del sistema en la interfaz de usuario de VR. [48]
En respuesta a la familia de errores Stagefright divulgados y corregidos en 2015, se realizaron varios cambios para reforzar la pila de medios contra futuras vulnerabilidades. Se implementó la detección de desbordamiento de enteros en tiempo de ejecución , lo que evitó que la mayoría de los errores de programación similares a Stagefright se convirtieran en vulnerabilidades, además de ayudar a corregir y prevenir dichos errores. El proceso monolítico MediaServer de Android fue rediseñado para adherirse mejor al principio de mínimo privilegio . MediaServer ahora está dividido en varios procesos separados, cada uno ejecutándose en su propio sandbox sin privilegios , y se le otorgan solo los permisos necesarios para su tarea. Por ejemplo, solo AudioServer puede acceder a Bluetooth , y libstagefright ahora se ejecuta dentro del sandbox MediaCodecService , al que solo se le otorga acceso a la GPU . Se colocaron más restricciones en la pila de medios a través de seccomp . [49]
Se habilitaron varios mecanismos para reducir la posibilidad de que se inyectara y/o ejecutara código malicioso dentro del núcleo de Linux , incluida la división de la memoria del núcleo en segmentos lógicos para código y datos, con permisos de acceso a la página de solo lectura y no ejecución según corresponda. También se restringió el acceso directo del núcleo a la memoria del espacio de usuario , y se habilitó una protección de pila más fuerte en el compilador GCC para reducir la destrucción de pila . Para limitar la exposición del núcleo a código potencialmente malicioso, perf se deshabilitó de forma predeterminada, los comandos ioctl fueron restringidos por SELinux y se habilitó seccomp-bpf para otorgar a los procesos la capacidad de restringir las llamadas del sistema . [50]
En los dispositivos que se entregan con Android Nougat, la política de "Arranque verificado" (introducida parcialmente en KitKat y que muestra notificaciones al iniciarse en Marshmallow) debe aplicarse estrictamente. Si los archivos del sistema están dañados o modificados de alguna otra manera, el sistema operativo solo permitirá el funcionamiento en un modo de uso limitado o se negará a iniciarse en absoluto. [51] [52]
Android Nougat admite un esquema de cifrado de unidad alternativo conocido como "cifrado basado en archivos". A diferencia del cifrado de disco completo , permite cifrar contenidos menos sensibles del almacenamiento (como los archivos del sistema operativo) utilizando solo una clave de hardware en lugar de requerir credenciales. Los datos confidenciales del usuario permanecen cifrados utilizando credenciales. El cifrado basado en archivos elimina el requisito de autenticación previa al arranque : en su lugar, Android arranca normalmente sin intervención adicional, pero el acceso a los datos protegidos por credenciales está restringido hasta que el usuario desbloquea el dispositivo por primera vez ("Arranque directo"). Mientras tanto, los servicios en segundo plano pueden acceder a los datos que almacenan en el contexto cifrado del dispositivo (como alarmas o notificaciones de mensajería, particularmente después de reinicios automáticos debido a actualizaciones o fallas) para mantener una funcionalidad limitada hasta que el usuario desbloquee el almacenamiento cifrado con credenciales. [53] [38]
Dieter Bohn de The Verge elogió la nueva interfaz multitarea en Android Nougat, calificándola de "demasiado esperada" para las tabletas Android. Aunque inicialmente encontró la implementación "confusa", escribió que funcionó bien una vez que la entendió correctamente, aunque señaló que "algunas aplicaciones no admiten completamente la pantalla dividida, mientras que otras funcionan bien pero muestran una advertencia de todos modos". A Bohn también le gustó la nueva forma de responder a cualquier notificación de mensaje, afirmando que "Android ha tenido durante mucho tiempo una ventaja en notificaciones útiles y consistentes" frente a iOS , y agregó que "ahora que las respuestas rápidas son estándar en él, no veo que esa ventaja disminuya". También señaló "ajustes" en todo el sistema operativo como cambios bienvenidos, incluidos los conmutadores rápidos en el cajón de notificaciones, un menú de Configuración con más información visual y una aplicación de Cámara que se ha "limpiado un poco". Bohn afirmó que no notó ninguna mejora significativa en la batería a pesar de la función de ahorro de energía Doze en Nougat. También escribió extensamente sobre el hecho de que, aunque Nougat es "genial", "es una pena que pase tanto tiempo hasta que alguien lo vea", escribiendo sobre la falta de actualizaciones en la mayoría de los dispositivos Android, y que "a menos que tengas un Nexus, podrían pasar algunos meses, podría pasar un año [ sic ], antes de que esté disponible en tu teléfono". [54]
Chris Velazco de Engadget también elogió las nuevas notificaciones de aplicaciones agrupadas, escribiendo que las notificaciones de las versiones anteriores de Android "simplemente se quedan ahí" hasta la interacción, pero Nougat "hace un trabajo mucho mejor al agruparlas por aplicación y permitirle hacer las cosas". Destacó la capacidad de expandir una notificación de Gmail agrupada para ver los asuntos y remitentes de los mensajes individuales. Velazco afirmó que la multitarea en pantalla dividida era un "gran problema", pero también encontró aplicaciones no compatibles. Los elementos visuales en la aplicación Configuración, los cambios rápidos en el menú desplegable de notificaciones y el nuevo idioma y la compatibilidad con emojis también fueron aspectos positivos en la revisión. Velazco notó una mejora de la batería gracias a la función de ahorro de energía Doze, afirmando que su "Nexus 6P parecía ganar alrededor de una o dos horas de duración de la batería en espera". También escribió que la instalación y el lanzamiento de aplicaciones podrían ser "un poco más rápidos de lo habitual" gracias al nuevo compilador de aplicaciones de Nougat, y esperaba que los desarrolladores de juegos utilizaran la nueva API Vulkan para algunos "juegos móviles realmente atractivos". [55]