¿Qué es el caché de Dalvik?

Al instalar ROM personalizadas, la mayoría recomienda borrar el caché de Dalvik. ¿Qué es exactamente el caché de Dalvik?

Respuestas (2)

La caché de Dalvik es el conjunto de archivos .dex guardados. Un archivo .dex es básicamente una versión de código de bytes compilada de una aplicación que se ha creado para la máquina virtual Dalvik en la que se ejecutan las aplicaciones de Android. Es similar a la máquina virtual de Java y tiene archivos .class guardados.

¿Es normal que una ROM recién instalada con caché Dalvik borrada tarde mucho en arrancar la primera vez? porque ParanoidAndroid seguro se está tomando su tiempo; cinco minutos y contando.
@badp Sí, mis primeras botas solían ser tan largas con varias ROM. Sin embargo, no le daría mucho tiempo antes de asumir que algo anda mal.

Encontré información muy reveladora dalvik-cacheen stackoverflow de fuentes acreditadas (empleados de Google que trabajaron en la plataforma de máquina virtual Dalvik).

A continuación se muestra el resumen, más desde la perspectiva del usuario de Android en (con suerte) palabras simples.

¿Dónde se encuentra dalvik-cache en mi dispositivo Android?

En un dispositivo Android típico, hay un directorio llamado dalvik-cache. Dado que Android se basa en Linux, utiliza una estructura de sistema de archivos del kernel de Linux. Por lo tanto, este directorio se encuentra en /datala carpeta. Entonces, la ruta para acceder a este caché de Dalvik en un dispositivo Android es/data/dalvik-cache

¿Cuál es el propósito del caché de Dalvik?

Cuando un usuario instala una nueva aplicación en Android, Android realiza algunas modificaciones y optimizaciones en el archivo de esa aplicación dex(el archivo que contiene todo el código de bytes dalvik para la aplicación). Luego almacena en caché el odexarchivo resultante (dex optimizado) en el /data/dalvik-cachedirectorio, para que no tenga que realizar el proceso de optimización cada vez que carga una aplicación.

¿Qué pasa si borro Dalvik Cache?

No hay ningún efecto, aparte de aumentar el tiempo de carga siguiente de una aplicación, a medida que se reconstruye. Por lo tanto, una aplicación tardará más en cargarse, ya que necesita reconstruir su Dalvik Cache. Por lo tanto, está bien borrarlo dalvik-cacheal instalar ROM personalizadas, ya que el sistema lo reconstruirá de todos modos con una nueva partición.

En una nota adicional, a partir de Android 4.4 (KitKat) , Google presentó un nuevo Android Runtime llamado ART que finalmente reemplazará a la máquina virtual Dalvik. Fuente

El ART, que usa el mismo código de bytes y .dexarchivos, compila el archivo dex en código nativo. Ese código compilado es lo que ahora está almacenado endalvik-cache