28 votes

Qu'est-ce que le cache Dalvik ?

Lors de l'installation de ROMs personnalisées, la plupart recommandent de vider le cache Dalvik. Qu'est-ce que le cache Dalvik ?

27voto

Matthew Read Points 50150

Le cache Dalvik est l'ensemble des fichiers .dex sauvegardés. Un fichier .dex est essentiellement une version compilée en bytecode d'une application qui a été construite pour la machine virtuelle Dalvik sur laquelle les applications Android fonctionnent. C'est similaire à la machine virtuelle Java et aux fichiers .class enregistrés.

0 votes

Est-il donc normal qu'une ROM fraîchement installée avec une mémoire cache Dalvik effacée prenne un certain temps à s'installer ? long Le temps de démarrer la première fois ? Parce que ParanoidAndroid prend tout son temps : cinq minutes et des poussières.

1 votes

@badp Oui, mes premiers démarrages ont souvent été aussi longs avec différentes ROMs. Je ne le laisserais pas trop longtemps avant de supposer que quelque chose ne va pas.

6voto

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

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X