apktoolを使ってみました。

その前に画面キャプチャする為のコマンド

2秒後にアクティブウィンドウのキャプチャを行う場合、
gnome-screenshot -w -d 2
または、
xwd > hoge.png

さて、apktoolを使って逆コンパイルしてみました。

必要なファイルはこれ。

$FXer太郎のブログ

ダウンロードはこちらから。

1.私の場合はubuntu使っているので、
 ・apktool1.3.2.tar.bz2
 ・apktool-install-linux-2.2_r01-1.tar.bz2
をダウンロード。

2.それぞれ解凍。
 ・apktool.jar
 ・apktool-install-linux-2.2_r01-1ディレクトリ(配下にファイルaaptとapktoolあり)

3.3ファイル(apktool.jar,aapt,apktoolを移動。(私の環境では/usr/local/binに移動)
$FXer太郎のブログ

あ、ここまでもここからもPATHが通ってるとかその辺は説明してないです。

4.パスが通っているディレクトリに.apkファイルを置く
(apkファイルの取得は、appmonster使うなりadb pullで引き抜くなりなんなりと)
$FXer太郎のブログ

5.コマンドライン端末から「apktool d mikutestpj.apk」と叩く
$FXer太郎のブログ

6.以下のディレクトリ・ファイルが作成される。
 ・resディレクトリ(画像とかxmlファイル)
 ・smaliディレクトリ(ソース(でもまだちょっと読めるレベルじゃない。推測はできるけど)
 ・Androidmanifest.xml
 ・apktool.yml(テキストファイル。実行結果っぽい内容)

$FXer太郎のブログ


ここからsmliディレクトリのファイルをソースに逆コンパイルする方法があるみたいなんだけど時間の都合で次回書きます。

※ちなみにAndroidマーケットにあるプログラムをapktoolで逆コンパイルしてみたんですがsmaliディレクトリが作成されなかったです。