Con Nexus 5 (Android 4.4 KitKat), Google ha enviado dos tiempos de ejecución para ejecutar aplicaciones.
¿Cuáles son las diferencias entre Dalvik y ART para los usuarios finales? ¿Cómo pueden verse afectados los usuarios finales por esto? ¿Hay alguna razón específica por la que deba elegir el nuevo tiempo de ejecución de ART?
Dalvik VM (máquina virtual) es la versión de Google de una máquina virtual Java (en la que se ejecutan las aplicaciones). Las máquinas virtuales mantienen las aplicaciones aisladas e independientes del hardware real y otras aplicaciones. Pero, para que esto funcione, Dalvik necesita convertir el llamado código de bytes (diseñado para máquinas virtuales) a código de máquina nativo. Para minimizar la penalización de rendimiento que introduce la conversión de bytecode a código nativo, se realiza un proceso llamado compilación Just-In-Time (JIT), que convierte bytecode caliente, es decir, de uso frecuente, en código nativo. 1
ART (Android Runtime) es un reemplazo de Dalvik que utiliza la compilación Ahead-Of-Time (AOT), lo que significa que sus aplicaciones se compilan en un estado listo para ejecutar incluso antes de que las inicie. Esto generalmente se hace en el momento de la instalación de la aplicación, lo que hace que el proceso de ejecución y uso sea mucho más rápido y sencillo. Y dado que esto significa que la compilación solo se realiza una vez, también puede ver una mejor duración de la batería.
Si ART es mejor desde el punto de vista del rendimiento y la duración de la batería, ¿debería comenzar a usarlo?
No. Si hace eso, puede dañar las aplicaciones de terceros. Google ha enviado esta vista previa de ART con Android 4.4 para que los desarrolladores prueben sus aplicaciones en él.
Nota al margen: el enfoque de Google con ART es vencer a iOS (las aplicaciones de iOS son nativas, por lo que funcionan mejor incluso con especificaciones de hardware de gama baja), pero no sé hacia dónde se dirige... ¿Otra fragmentación? Consulte Los fabricantes de equipos originales son libres de construir dispositivos usando uno o ambos . Si bien la versión final no debería afectar a la mayoría de las aplicaciones, no es 100% multiplataforma.
1 Tenga en cuenta que JIT se agregó a Dalvik en Android 2.2
dan hulme
iOS
Raúl Raina