回答:
.dex
ファイルには、基本的にはAndroidのアプリは上で実行するのDalvik VM用に構築されたアプリケーションのコンパイル済みのバイトコードバージョンです。Dalvik Executableの略だと思いますが、それを正しく覚えているかどうかはわかりません。
.odex
ファイルが最適化されて.dex
、それは基本的に、特定のプラットフォーム用に事前にコンパイルされていることを意味し、ファイル(それゆえ「O」)。これの利点は、VMが起動/実行時に最適化を実行する必要がないため、起動時間がはるかに高速になることです。欠点は、1)余分なスペースを占有すること、および2)他のデバイスに置くとodexedアプリが適切に実行されず、実行するために関連.odex
ファイルが必要であることです。
ROMは、テーマ化および変更がかなり簡単であるため、通常はデオデックス形式でリリースされますが、Odexed ROMのテーマ/変更は基本的に不可能です(せいぜいクレイジーにクラッシュします)。一部の人々は、パフォーマンスの向上を好む人々のために、ROMをオデックスバージョンでリリースすることも選択します。
私が見たストックROMのほとんどはオデックスです。これは、キャリア/製造業者がパフォーマンスの向上を望んでいるからだと思います。また、公式のテーマ設定方法も用意されていないため、ステータスアイコンやシステムテキストの色を変更できないかどうかは気にしないでしょう。さらに、どのデバイスでシステムを実行するかを知っているという利点があるため、.odex
ファイルを非常に簡単にプリコンパイルできます。追加のボーナスとして、.apk
デバイスからファイルを取り出して他の人と共有することが難しくなります。
編集:ここでの違いについてはあまりはっきりしていないことに気付いたので、「オデックス化された」ROMはアプリがプリコンパイルさ.odex
れたもので、.apk
ファイルの外部にある関連ファイルが含まれています。AはROMがで最適化されるだろうデータ1である「deodexed」.odex
ファイルは、多かれ少なかれバックにマージされた.apk
ファイル(それが最適化されていないという意味が、基本的にプラットフォームに依存しない)、これ.apk
のファイルは自己完結型であり、何ら存在しない.odex
ファイルは、 。これは通常、smali / baksmaliなどのデオデキシングユーティリティを使用して行われます。
私は個人的に少し前にこれに対する答えを知りたかったです。ここに私が思いついたものがあります:
オデックスおよびデオデックス
標準ROMはリリース用にオデックス化され、メモリへのアプリのよりスムーズで高速なロードを提供することになっています。各.apkには、対応する.odexがあります。システムまたはユーザーがアプリケーションを使用する場合、.odexを使用してアプリのロードを開始します。デオデックスされたROMには、.apkファイルのみがあります。アプリケーションが.apkからデータを取得するだけでメモリに呼び出される場合、システムからの取得が容易になるように最適化されていないため、これには時間がかかります。
よく聞かれる質問は次のとおりです。
これらの質問に答えるには、1つの言葉、themabilityに帰着します。ROMをテーマにした人と話すと、デオデックスROMをテーマにした方が非常に簡単だと言われます。デオデックスROMの使用を開始して以来、ROMをテーマにするための退屈なオプションではなく、テーマを作成してROMに適用できるようになりました(テーマのカスタムROMをリリースします)。Odexed ROMを使用してテーマを適用しようとすると、動作しないか、一部の視覚的側面のみがテーマになり、ひどいユーザーインターフェイスが体験できます。
デオデックスの短所
私はあなたが今なぜ疑問に思っているに違いない...なぜオーデックスされたカスタムROMをダウンロードするオプションさえあるのか?その答えは速度です。Odexedファイルは簡単に取得できるように最適化されていると言ったことを覚えていますか?簡単に言えば…システムが.apkをより速く開くことができるように最適化されています(データテーブルのインデックス付けなど)。
デオデックスとジップアライン
デオデックスのトレンドがピークに達した後、誰もがすぐに両方の世界のベストを望みました。これらの経験豊富なROM開発者は、起動時にzipalignするソリューションを思い付きました。これにより、再起動するたびに各.apkが最適化され、システムがより効率的かつ最も重要なことに、より高速にアプリケーションにアクセスできるようになります。もちろん、欠点はブート時間がわずかに遅いことです。
概要
カスタマイズされたカスタムROMまたはデオデックスをダウンロードする選択肢がある場合は、デオデックスROMを使用します。テーマを試してみたいときや自分で変更したいときがいつかわからないので、まったく新しいROMをフラッシュするのではなく、簡単なオプションがあると便利です。新しいデバイスでは、起動時にzipalignに顕著な違いさえ見られないかもしれません。お使いのデバイスがかなり低速で古くなっている場合は、これについて少し難しく考えることをお勧めします。ユーザーインターフェイスのカスタマイズよりもパフォーマンスと速度を向上させるために、最適化された(最適化された)ROMを手に入れたいと思う人もいるでしょう。
あなたが主題を新しくしているならば、あなたはここで私のオリジナルの記事にあるいくつかの一般的な用語を見つけることができます:http://codeversed.com/deodexed-vs-odexed-rom
それ以外の場合、上記はあなたが知る必要があるすべてを示しています。私が何かを見逃した場合、私に知らせてください:)
.dex(dalvik実行可能ファイル)ファイルは、基本的にWindowsの.exeファイルに似ています(コンパイル済みコードではなく、Dalvik VMの言語を除く)。基本的に、.odex(最適化されたdalvik実行可能ファイル)およびdeodex(最適化されていないdalvik実行可能ファイル)は、アプリケーションでのリソースファイルの処理方法に関連しています。.odexは、dexoptプログラムによって最適化された.dexファイルです:http : //www.netmite.com/android/mydroid/dalvik/docs/dexopt.html
利点
不利益