ノートパソコンのハードドライブがクラッシュし、過去 2 か月間開発していたアプリのソース コードがすべて失われました。残っているのは、友人に送信したときにメールに保存されていた APK ファイルだけです。
この APK ファイルからソースコードを抽出する方法はありますか?
ベストアンサー1
最も簡単な方法:オンラインツールを使用するデコンパイラapk をアップロードし、ソースコードを取得します。
.apk ファイルをデコードする手順、ステップバイステップの方法:
ステップ1:
新しいフォルダーを作成し、デコードする .apk ファイルをコピーします。
次に、この .apk ファイルの拡張子を .zip (filename.apk から filename.zip に名前を変更) に変更して保存します。これで、classes.dex ファイルにアクセスできるようになります。この段階では、drawables は表示されますが、.xml ファイルと .java ファイルは表示されません。
ステップ2:
次に、この .zip ファイルを同じフォルダーまたは新しいフォルダーに解凍します。
dex2jarをダウンロード(コードをダウンロードしないで、右側にあるリリース ボタンをクリックし、 という名前のファイルをダウンロードし
dex2jar-X.X.zip
、同じフォルダーまたは新しいフォルダーに抽出します。classes.dex ファイルを dex2jar フォルダーに移動します。
次に、コマンド プロンプトを開き、ディレクトリをそのフォルダーに変更します。次に、
d2j-dex2jar classes.dex
(Mac または Ubuntu の場合は./d2j-dex2jar.sh classes.dex
) と入力し、Enter キーを押します。これで、classes.dex.dex2jar ファイルが同じフォルダーに作成されます。Javaデコンパイラをダウンロードjd-gui を右クリックし、[ファイルを開く] をクリックして、そのフォルダーから classes.dex.dex2jar ファイルを開きます。これでクラス ファイルが取得されます。
これらのクラス ファイルをすべて src 名で保存します (jd-gui で、[ファイル] -> [すべてのソースを保存] をクリックします)。この段階では、Java コードは取得されますが、.xml ファイルはまだ読み取り不可です。
ステップ3:
次に別の新しいフォルダを開きます
デコードしたい.apkファイルを入れます
最新バージョンをダウンロードapktoolとapktool インストール ウィンドウ(両方とも同じリンクからダウンロードできます)同じフォルダに配置します
コマンドプロンプトを開く
コマンドを実行します
apktool if framework-res.apk
(持っていない場合)ここから入手)そして次にapktool d myApp.apk
(myApp.apk はデコードするファイル名を表します)
これで、そのフォルダー内にファイル フォルダーが作成され、.xml ファイルを簡単に読み取ることができるようになります。
ステップ4:
特別な手順はなく、両方のフォルダ(両方の新しいフォルダ)の内容を1つのフォルダにコピーするだけです。
ソースコードをお楽しみください!