J'ai trouvé des informations très instructives sur dalvik-cache
à l'adresse stackoverflow de sources réputées (les employés de Google qui ont travaillé sur la plateforme de machine virtuelle Dalvik).
Vous en trouverez ci-dessous le résumé, du point de vue de l'utilisateur d'Android, en des termes (espérons-le) simples.
Où se trouve le dalvik-cache dans mon appareil Android ?
Dans un appareil Android typique, il y a un répertoire nommé dalvik-cache
. Comme Android est basé sur Linux, il utilise la structure du système de fichiers du noyau linux. Par conséquent, ce répertoire est situé dans /data
dossier. Ainsi, le chemin pour accéder à ce cache Dalvik dans un appareil Android est le suivant /data/dalvik-cache
Quel est le but du cache Dalvik ?
Lorsqu'un utilisateur installe une nouvelle application sur Android, ce dernier procède à certaines modifications et optimisations du code source de cette application. dex
(le fichier qui contient tout le bytecode dalvik de l'application). Il met ensuite en cache le fichier odex
(dex optimisé) dans le fichier /data/dalvik-cache
afin de ne pas avoir à effectuer le processus d'optimisation à chaque fois qu'il charge une application.
Que se passe-t-il si je supprime le cache Dalvik ?
Il n'y a aucun effet, si ce n'est d'augmenter le temps de chargement suivant d'une application, car elle est reconstruite. Ainsi, une application mettra plus de temps à se charger car elle doit reconstruire son cache Dalvik. Par conséquent, il est correct d'effacer dalvik-cache
lors de l'installation de ROMs personnalisés, car le système va de toute façon le reconstruire avec une nouvelle partition.
Par ailleurs, à partir de Android 4.4 (KitKat) Google a introduit un nouveau Runtime Android appelé ART qui va finalement remplacer la machine virtuelle Dalvik. Source :
L'ART qui utilise le même bytecode et le même .dex
compile le fichier dex en code natif. Ce code compilé est ce qui est maintenant stocké dans le fichier dalvik-cache