Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ■いわゆるodexとdeodexの違い
- ・odex
- apk(jar)ファイルとodexファイルが対になっている
- 例:framework.jarとframework.odex、SystemUI.apkとSystemUI.odexなど
- そもそもodexとは、odexファイルの拡張子の名前
- ・deodex
- 1つのパッケージは1ファイル
- 例:TaskSwitcher.apk(TaskSwitcher.odexは存在しない)
- ■そもそもodexファイルとは何か
- パッケージのうちコード部分がまとめられ、その機種に最適化され、さらに署名が埋め込まれたファイルのこと
- deodexの場合、コード部分はapk(jar)の中にclasses.dexの形で内包されている
- 逆に、odexファイルがある場合は、apk(jar)の中にclasses.dexは存在しない
- optimaizedなdex → odex
- ■odex方式のメリット・デメリット
- 【メリット】
- ・コード部分がはなから最適化されているため、効率がいい(はず)
- ・利用者側は、余分な作業をせずapk(jar)やodexを上書きするだけの簡単なお仕事
- 【デメリット】
- ・odexファイルがその機種に最適化されているため、他機種にそのまま移しても動かない
- ・カスタムしようとしたときに、apk(jar)とodexそれぞれを別々に管理しないといけないので面倒
- ・odexファイルは実機上でしか再作成出来ない
- ・odexの署名部分を自力で生成することは不可能なので、元々odexの形になっている必要がある
- 作業の最後に、オリジナルのodexから改変後のodexに署名部分を移す工程がある
- (例えばTaskSwitcher.apkをodex方式にするのは無理)
- ■その他
- deodex方式の場合、結局odexに相当するものが/data/dalvik-cacheに生成される
- よくカスタムシーンで「dalvik-cacheをワイプしなさい」と言われるのはそういうこと
- ■個人的な好み
- 元々odex式のものはodex式のままにしておく方が好き
Add Comment
Please, Sign In to add comment