既存のAndroidアプリを解析することで、自分で作成するアプリの参考にできます。
apk ファイルの取得
androidアプリを解析するためには、そのアプリのapkファイルなるものを
得る必要があります。
apkファイルの抽出は “App Extraction”というandroidアプリが使えます。
まず、解析したいアプリをandroid上にインストールします。
その後、この”App Extraction”を開いて、対象のアプリを選択し、”apk Extraction”
ボタンを押すと、上部に記載されたディレクトリに保存されます。
デフォルトだと “/mnt/sdcard”になっていると思いますが、設定ボタンから変更できます。
apkファイルの展開
apkファイルは、中身はzipファイルなので、拡張子の.apkを.zipに変えれば展開できますので、
展開してください。
classes.dex を classes.jarに変換
zipを展開すると、classes.dex というファイルがあります。
これを jarファイルに変換すると内容が見えるようになります。
変換ツールはここからダウンロードできます。
自分の場合はこれをLinux上において以下を実行しました。
$ ./d2j-dex2jar.sh classes.dex
これにより「classes-dex2jar.jar」が作成されました。
自分の場合は、Windowsで解析するために、このコマンドの実行によって作成された classes-dex2jar.jar ファイルをWindowsにダウンロードします。
jarファイルの解析
以下のサイトからプログラムをダウンロードします。
自分はWindowsで解析するので「jd-gui-0.3.6.windows.zip」を
ダウンロードしました。
ダウンロードしたファイルを展開すると、フォルダの中に「jd-gui.exe」というファイルがありますので、これを実行します。
jd-gui.exeの実行により表示されたウィンドウに、先ほど作成した classes.jar ファイルをドラッグアンドドロップすると、jarファイルの中のファイルがツリー上に表示されます。
これで、apkの中身が見れるようになったので、それぞれのファイルなどを見て解析します。
このままだと扱いにくい場合は、「File」->「Save All Sources」で保存すれば、すべてのファイルをテキストファイルとして保存できます。/