Tabla de contenido:
Cada vez que el software de nuestros teléfonos recibe una gran actualización, escuchamos cómo funcionará mejor y usará menos batería. Si bien a menudo es cierto, las ideas y cómo se implementan necesitan mucho ajuste para cumplir con las expectativas. Android 7.0 mejora en dos funciones existentes para ayudarles a alcanzar su máximo potencial: Projects Doze y Project Svelte.
Los objetivos son simples: encontrar formas de hacer que el teléfono tenga menos consumo de energía cuando no lo esté usando y una mejor administración de los procesos en segundo plano. Todo el software está construido con énfasis en el rendimiento y la eficiencia, y un sistema operativo mucho más. Echaremos un vistazo a los cambios y veremos cómo podrían tener un impacto.
Proyecto esbelto
Project Svelte llegó en 2013 con el lanzamiento de Android 4.4 KitKat como una forma de que el sistema operativo funcione mejor en teléfonos de gama baja. En ese frente, tuvo éxito, pero esperábamos cambios más grandes de lo que obtuvimos. Para tener una buena idea de cuáles eran las intenciones originales de Svelte, no busque más que Android One. El objetivo era crear hardware económico que ejecute la última versión de Android lo suficientemente bien como para recomendarlo.
Con Android 7.0, el proyecto continúa reduciendo el impacto en el rendimiento al tener un sistema aún mejor para la gestión de procesos en segundo plano.
Los cambios en Svelte abordan dos problemas específicos e importantes que obligan a las aplicaciones a ejecutarse en segundo plano.
Android es muy diferente de iOS. Cualquier desarrollador puede pagar una tarifa muy pequeña y publicar una aplicación en Google Play junto con nombres como Facebook o Samsung. Siempre que la aplicación no tenga código malicioso, se pondrá en funcionamiento para que todos la instalen, y a menos que se informe de contenido inapropiado o acciones, se quedará (aunque Google dice que realiza una verificación automática de cada aplicación antes de ponerla en funcionamiento). Eso está muy lejos de todas las aplicaciones enviadas a través de un proceso de aprobación manual, y significa que las aplicaciones no se rechazan porque no siguen las mejores prácticas de desarrollo. El comportamiento de algunas de las API actuales no ayuda, e incluso las mejores aplicaciones pueden despertarse y usar recursos con demasiada frecuencia debido a un proceso erróneo.
Las mejoras a Svelte en Android Nougat solucionan dos problemas evidentes:
- Las aplicaciones verifican si la red cambia usando lo que se llama un receptor de transmisión. Cuando ocurre un cambio, cada aplicación que escucha el cambio a través del método predeterminado se despierta de una vez e intenta procesar los datos sobre el cambio. Piense en cómo funciona su teléfono cuando se inicia por primera vez y todo intenta suceder de inmediato. tener una idea de por qué esto necesita algún tipo de mejora. Cuando se dirige a Android 7.0, las aplicaciones solo pueden escuchar los cambios de red a través del hilo principal (lo que se ejecuta cuando la aplicación está activa y la estás usando) para que no se activen cada vez que cambias de red. Esto usará menos RAM y tiempo de CPU, lo que significa que nuestros teléfonos funcionarán mejor y usarán menos energía.
- En versiones anteriores de Android, las aplicaciones podían escuchar en un receptor de transmisión similar para tomar una foto o video. Cuando eso sucedió, todas las aplicaciones que escuchaban se despertaron e intentaron procesar los datos a la vez. Como anteriormente, eso no es muy bueno en el frente de rendimiento. En Android 7.0, la nueva imagen y las nuevas transmisiones de video no se pueden enviar. Eso significa que incluso si los desarrolladores no actualizan las aplicaciones existentes, nunca se les pedirá que se despierten cuando se tome una foto o un video.
Para que las aplicaciones hagan muchas de las cosas que queremos que hagan, tienen que mantenerse con vida. Adelgazar las cosas que hacen mientras esperan silenciosamente para activarse una vez más al eliminar funciones innecesarias significa que se ejecutarán menos aplicaciones en lugar de dormir cuando se envíen a un segundo plano.
Proyecto Doze
De la forma en que funcionan las cosas ahora, amas a Doze o no ves a Doze haciendo nada notable en tu teléfono. Eso es por la forma en que funciona.
Cuando Doze debutó en Android 6.0, su intención era diferir la actividad de la CPU y la red mientras la pantalla de su teléfono estaba apagada, desconectada e inmóvil. Si no se cumplieran los tres criterios, Doze no se activaría y las aplicaciones continuarían ejecutándose normalmente. Esto funcionó muy bien mientras estaba en la oficina y en su escritorio, pero tan pronto como entró en su bolsillo, Doze dejó de hacer nada y los beneficios cesaron.
Un Doze de dos etapas le permite a su teléfono usar menos batería mientras está en movimiento y también
El cambio de comportamiento en Android Nougat es simple. Doze ahora tiene dos etapas: una es cuando la pantalla está apagada y el teléfono está desconectado, y la otra es cuando el teléfono también está inmóvil.
Cuando su teléfono funciona solo con la batería y la pantalla ha estado apagada durante un período de tiempo establecido, las aplicaciones dejarán de acceder directamente a la red, y las actividades como la sincronización y otros trabajos se aplazan hasta que pase un período de tiempo predefinido. Luego, una breve ventana de mantenimiento les permite realizar funciones normales en segundo plano. Esta parte funciona mientras su teléfono está en su bolsillo o sujeto a otras formas de movimiento.
Cuando el teléfono también ha estado quieto durante un tiempo determinado, todas las restricciones de Doze: cosas adicionales como aplicaciones que se despiertan en segundo plano o escuchan lo que se llama una alarma (no del tipo que lo despierta por la mañana, no se ven afectadas) o buscando la ubicación actual: se aplican en la parte superior de la red y los aplazamientos de trabajos. La ventana de mantenimiento todavía aparece regularmente, pero entre esas ventanas su teléfono apenas está vivo y no hace mucho hasta que lo levante.
Sabemos qué tan bien funciona Doze (cuando no ha sido modificado por las personas que construyeron su teléfono) mientras el teléfono está quieto. Ahora también veremos un beneficio cuando estemos en movimiento.
¿Los cambios en Svelte y Doze solucionarán todos los problemas de rendimiento y batería? La respuesta, por supuesto, es no. Pero estos cambios son pasos lógicos que abordan dos cosas muy específicas que deben abordarse. El resultado será mejor de lo que tenemos ahora, incluso si no puede resolverlo todo.