Відповіді:
Кеш Dalvik - це набір збережених файлів .dex. Файл .dex - це в основному складена версія байт-коду програми, створеної для віртуальної машини Dalvik, на якій запускаються програми Android. Це схоже на віртуальну машину Java і зберігає файли .class.
Знайдено дуже прониклива інформація про dalvik-cache
на StackOverflow з відомих джерел (співробітників Google, які працювали на Dalvik віртуальної платформі машини).
Нижче наведено його підсумок, більше з точки зору користувача Android у (сподіваємось) простих словах.
Де в моєму пристрої Android розміщений далвік-кеш?
У типовому пристрої Android є каталог з назвою dalvik-cache
. Оскільки Android базується на Linux, він використовує структуру файлової системи ядра Linux. Отже, цей каталог знаходиться в /data
папці. Тож шлях до доступу до цього кешу Dalvik на пристрої Android є/data/dalvik-cache
Яке призначення кеша Dalvik?
Коли користувач встановлює нову програму на Android, Android виконує деякі зміни та оптимізації у dex
файлі цього додатка (файл, який містить весь байт-код дальвіка для програми). Потім він кешує отриманий odex
(оптимізований dex) файл у /data/dalvik-cache
каталозі, так що він не повинен виконувати процес оптимізації кожного разу, коли він завантажує додаток.
Що робити, якщо очистити кеш Dalvik?
Немає жодного ефекту, крім збільшення наступного часу завантаження програми під час його перебудови. Таким чином, для завантаження програми знадобиться більше часу, оскільки для відновлення кеша Dalvik це потрібно. Отже, добре встановити dalvik-cache
під час встановлення користувальницьких ПЗУ, оскільки система в будь-якому випадку відновить її з новим розділом.
Додатково, від Android 4.4 (KitKat) , компанія Google представила нову програму Android Runtime під назвою ART, яка в кінцевому підсумку замінить віртуальну машину Dalvik. Джерело
АРТ, який використовує той самий байт-код і .dex
файли, збирає файл dex у власний код. Цей складений код - це те, що зараз зберігаєтьсяdalvik-cache