Root / Roms Customs - Odexed, Deodexed, quelle différence ?
Odexed ou Deodexed ? Voilà des termes que l'on lit régulièrement, sans toujours savoir de quoi il en retourne. Décryptage et explications, tout en douceur.
Odexed
Sur une ROM odexed, on trouve dans les dossiers systèmes des applications, des fichiers avec l'extension .odex. Cela signifie Optimized Dalvik Executable File (fichier exécutable dalvik optimisé). Dans le dossier /system/app/ vous trouverez Browser.apk et browser.odex également.
Qu'est-ce qu'il y a dans ce fichier .odex ?
Et surtout, à quoi ça sert ? Cela sert à organiser la structure du système, ils contiennent des informations relatives aux applications (démarrage, utilisation, etc...) et permettent à Android d'accéder à ces informations sans avoir à aller les chercher et les décompresser à partir des fichiers .apk. Les fichiers odex sont chargés directement dans le dalvik cache, dont vous avez peut-être déjà entendu parler lors d'un wipe avant ou après un flashage de ROM. C'est en quelque sorte une pioche qui permet au système d'être plus rapide.
Avantages d'une ROM Odex
- Les applications démarrent plus rapidement, car les informations importantes sont déjà chargées par le système.
- Les fichiers .apk sont moins gros et prennent moins de place.
Inconvénients
- La modification des applications et thèmes est plus difficile, car le code à modifier se trouve dans deux endroits différents
- Lorsque l'on supprime des données d'applications, il faut supprimer le fichier .odex également, pour éviter les erreurs
Deodexed
Sur une ROM Deodexed, toutes les informations relatives à une application se trouvent dans son fichier .apk. Le code contenu dans les fichiers .odex est ajouté à l'apk, sous le nom classes.dex.
Avantages d'une rom deodexed
- La modification des applications et l'installation de thèmes est bien plus facile, car toutes les données sont centralisées dans l'APK.
- Il est plus facile de supprimer les fichiers système des applications, il suffit de supprimer l'APK de celles-ci.
Inconvénients
- Les informations ne peuvent pas être pré-chargées, le lancement des applications est donc moins rapide
- Le démarrage du système (boot) est plus lent car les informations doivent être extraites des APK par le système, qui ne dispose pas de celles-ci dans le fichier .odex.
A noter que ces deux inconvénients sont vites oubliés, car le dalvik cache stocke les informations extraites des APK dans le dalvik cache pour y piocher ensuite. Les boots un peu longs ne vous dérangeront qu'après un wipe du dalvik cache.
Pour résumer
Les versions d'Android officielle, qui proviennent directement du constructeur, sont quasiment toujours odexed. Les roms customs, ou roms personnalisées, sont presque toujours deodexed, pour pouvoir offrir plus de possibilités de modifications.
Très utile et pertinent. Merci.