Logo após o lançamento da versão 4.4. do Android, o Google anunciou que havia desenvolvido uma nova versão de compilador em tempo de execução chamado ART (Android Runtime), e que este novo modelo poderia eventualmente vir a substituir o Dalvik em próximas versões do SO. Os resultados dos testes foram tão promissores que, com o lançamento do Android Lollipop 5, o Android Runtime se tornou o ambiente padrão de execução, substituindo por completo o Dalvik.
Diferentemente do Dalvik, que fazia a compilação do código da aplicação apenas pouco antes desta ser iniciada, conceito definido como JIT (Just in Time), o ART compila os bytecodes no momento da instalação da aplicação. Esta função, chamada de Ahead-Of-Time (AOT), se mostrou muito mais eficiente do que o modelo anterior, promovendo uma melhoria do desempenho do sistema e uma redução no consumo da bateria do equipamento. Além disso, o ART compilava o código nativo java diretamente para linguagem de máquina, eliminando a necessidade de carregar uma Máquina Virtual para cada nova aplicação iniciada do dispositivo, modificação esta que reduzia consideravelmente o uso de recursos do SO.
Como já comentado, os testes realizados apontaram uma considerável melhoria de performance na execução de aplicações de usuário com a mudança do Dalvik para o ART. Alguns dados relacionados a estes testes podem ser visualizados na figura abaixo.
Apesar da melhoria de performance, a adição do ART também trouxe consigo algumas características negativas.
A principal foi o fato de que, em média, a conversão prévia do código da aplicação para o código nativo da máquina realizado pelo ART fez com que o aplicativo passasse a ocupar de 10% a 20% mais espaço de armazenamento do que ocupava anteriormente. Outro ponto negativo observado foi o de que como a compilação do ART é realizada no momento da instalação da aplicação, percebeu-se um incremento no tempo necessário para inclusão de novos aplicativos no SO, causando um impacto negativo na usabilidade do Sistema Operacional.
X