dexesファイルのendian_tagは実際にどのように機能しますか? Documentationは一定のENDIAN_CONSTANTは、それが見出される ファイルのエンディアンを示すために使用されるdexファイルのendian_tag
と述べています。標準の.dex形式は リトルエンディアンですが、実装はバイトスワップを実行することがあります。 インプリメンテーションはENDIAN_CONSTANTではなく REVERSE_ENDIAN_CONSTANTのendian_tagを持つヘッダーを参照すると、 というファイルが予期された形式からバイトスワップされていることがわかります。
REVERSE_ENDIAN_CONSTANT
がある場合、ファイルはビッグエンディアンを使用すると考えられます。これは正しい?さらに、ファイルのどの部分がこのビッグエンディアンを使用することになっていますか?header_item
を含むファイル全体?
したがって、私はdexファイル***を1バイトずつ読みます*** ***ネイティブのdexファイルはリトルエンディアンなので、常に "78:56:34:12"になりますか?それは正しい? – Drecker
これは「生の」DEXファイルに対する私の期待です。 – fadden
@faddden - ありがとうございます:) – Drecker