私はすでにAndroidアプリケーション(.apkファイル)をコンパイルしています。開始前にスプラッシュ画面を表示するように変更したい。ソースコードなしでこれを行うことはできますか?
質問する
4045 次
2 に答える
4
あまり。
逆コンパイルは直接的なプロセスではありません。コンパイルプロセスで大量の情報が失われます(変数名が破棄されたり、コメントが破棄されたりします...)。アンドロイド用:
- APKは、一連のクラスとリソースを含む単なるzipファイルです。
- これらのクラスは
.dex
ファイルにコンパイルされます。 - その
.dex
ファイルには、Java仮想マシンのコードにいくぶん似ているコードが含まれています。 - ツールを使用して、dexをjarに変換できます
dex2jar
。 - これを行った後、Javaデコンパイラーを使用するだけです。
ただし、元の質問で尋ねられているように、この方法でコードを変更することは基本的に不可能であり、保守不可能な恐ろしいコードの山が生成されます。逆コンパイルされたコードがどのように機能するかを部分的に理解し(コメントや中間変数名がないため)、これを実行してから変更するのにも長い時間がかかります...
于 2012-06-11T12:40:44.197 に答える
0
この質問を参照してください。
まず、apkファイルは単なる変更されたjarファイルです。したがって、本当の問題は、内部のdexファイルを逆コンパイルできるかどうかです。答えは一種です。
したがって、.APKのコンパイルに使用したソースコードを変更しただけの場合が最も簡単です。
于 2012-06-11T12:21:11.363 に答える