deodexedプログラムを含むROMは、odexedよりも速いですか、遅いですか?


8

deodexing(または用語)の影響に少し混乱しています。

オデックスとデデックスのROMの違いは何ですか?」に対する回答に基づく:

「deodexed」ROMは、.odexファイルが多かれ少なかれ.apkにマージされたものです。

これは、「deodexed」ROMが.apkパッケージに.odexが含まれているのではなく別のファイルに含まれているodexed(したがってプリコンパイル/最適化された)ROMであることを示唆しているようです。

ただし、同じ答えには一見反対の引用があります:

ROMは通常、テーマを設定して簡単に変更できるため、デデックス形式でリリースされます。一方、dexed ROMのテーマ設定/変更は基本的に不可能です(最高の状態では異常にクラッシュします)。一部の人々はまた、パフォーマンスの向上を好む人々のために、オデックスバージョンでROMをリリースすることを選択します。

この2番目の引用は、deodexed ROMがodexed ROMのパフォーマンスの向上を持たないことを示唆しているようです(最後の文に基づく)。一方、最初の引用では、deodexed ROMはodexedと同じように最適化されているが、パッケージが異なっていると述べているようです。

これらの意味のどれが正しいですか?何が欠けていますか?

例:

  • フィション・バニラ:「ROMにはルートがあり、デデックスされており、ジップアラインされている」

回答:


8

Deodexed ROMには、.odexファイルが.apkに統合されていないため、削除されます。他の質問に対する彼の回答でeldareathisが意味したのは、.odexファイルへの.apkの依存が削除されたことです。一部の情報は.apkに統合されますが、実際の.odexファイル自体には統合されません。 このページには、技術的な詳細がいくつかあります

Deodexed ROMは、このため少し遅くなるかもしれません。ただし、DalvikキャッシュはROMを使用して構築されるため、パフォーマンスのギャップは最小限に抑えられます。


ありがとう!「パフォーマンスギャップが最小化された」部分について詳しく説明できますか?それは、最初の使用後、ギャップが完全に.apkに対して完全に排除されることを意味しますか(そして、最小化は、「すべての.apkが一度に構築されるキャッシュを持っているわけではありません」に適用されます)が構築された後でも、デデックスよりも速いですか?
DVK

@DVK一般に、.odexの方がまだ高速だと思いますが、.dexファイルをキャッシュすることで、起動時にすべての.apkを変換する必要がなくなります。ほとんどの場合、オーバーヘッドはおそらく最適化よりもはるかに重要だと思います。
マシュー

2
@DVK:以前の回答ではそれがどのように不明確であったかを理解しているので、戻って少し明確にしようとしました。ご指摘いただきありがとうございます。この質問に関して、マシューが彼の答えで言ったすべては完全に正しいです。
eldarerathis
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.