С Nexus 5 (Android 4.4 KitKat) Google выпустила две среды выполнения для запуска приложений.
Каковы различия между Dalvik & ART для конечных пользователей? Как это может повлиять на конечных пользователей? Есть ли какая-то конкретная причина, по которой я должен выбрать новую среду выполнения ART?
dalvik
4.4-kitkat
art
Android Quesito
источник
источник
Ответы:
Dalvik VM (виртуальная машина) - это версия Google VM от Java (на которой запускаются приложения). ВМ хранят приложения изолированными и независимыми от реального оборудования и других приложений. Но чтобы это работало, Dalvik необходимо преобразовать так называемый байт-код (разработанный для виртуальной машины) в машинный код. Чтобы минимизировать снижение производительности, которое вводит преобразование байт-кода в собственный код, выполняется процесс, называемый JIT-компиляцией, который преобразует горячий, то есть часто используемый, байт-код в собственный код. 1
ART (Android Runtime) - это замена Dalvik, использующая компиляцию Ahead-Of-Time (AOT), то есть ваши приложения компилируются в состояние готовности к запуску еще до того, как вы их запустите. Обычно это делается во время установки приложения, чтобы процесс их запуска и использования стал намного быстрее и плавнее. А поскольку это означает, что компиляция выполняется только один раз, вы также можете увидеть лучшее время автономной работы.
Нет. Если вы это сделаете, вы можете взломать сторонние приложения. Google выпустил этот предварительный просмотр ART с Android 4.4 для разработчиков, чтобы протестировать свои приложения на нем.
Дополнительное примечание: подход Google к ART заключается в том, чтобы превзойти iOS (приложения для iOS являются нативными, поэтому работают лучше даже на слабых аппаратных спецификациях), но я не знаю, к чему это приведет ... Еще одна фрагментация? Смотрите OEM-производители могут свободно создавать устройства, используя один или оба . Хотя окончательная версия не должна влиять на большинство приложений, она не является кроссплатформенной.
1 Обратите внимание, что JIT был добавлен в Dalvik в Android 2.2
источник