J'essaie de comprendre certaines choses sur la façon dont les fichiers dex sont traités par Android.
Ce que je sais, c'est qu'un APK envoie un fichier dex, le système le récupère, l'optimise au moment de l'installation, et stocke le fichier ODEX résultant (dex optimisé) dans /data/dalvik-cache/myOdexfile, puis exécute l'application à partir de là.
C'est vraiment comme ça que ça marche ?
Que se passe-t-il lorsqu'un fichier dex télécharge et ouvre un nouveau fichier dex à partir d'internet ? Est-ce que cela est également optimisé ?
Aussi - le système, afaik, garde l'APK original autour, non ? Je pense qu'il est conservé dans /data/app/myAPK-1.apk. Est-il utilisé de quelque manière que ce soit par le système ? Quand ?
Pouvez-vous d'une manière ou d'une autre forcer manuellement la régénération du fichier odex à partir du fichier APK stocké après l'installation ?
0 votes
Tout comme le fichier .class (byte code) est exécuté dans le JRE sur les systèmes de bureau. Android a Dalvik ou ART qui comprend le code byte mais dans le format .dex. Pour Android, le fichier .class est converti en fichier .dex, puis l'apk est formé.