まいにちごゆるり

ITド素人の日常をぽつぽつと

公式アプリの中身が見たかった話

お久しぶりですこんにちは、飯テロ犯罪者のNoviaでございます🍜

今回は初めてapktoolを扱ったことを記事に残しておきたいと思います。

ちゃんと真面目に書きますよ真面目に。ご飯の話題では決してない🍚🍚🍚



題名の通り、ホニャララ企業の公式アプリの中身が見たい…!という、邪な気持ちでapktoolの導入を決めました。

企業が分かってしまいそうな所には、一部目隠しを入れてあります。何卒ご了承ください。



今回はアドベントカレンダー用(に書いたわけではないんだけど)の記事なので、カレンダーのリンクも貼っておきます📅

adventar.org

こちらも是非見てみてくださいね|ω・*)
 


apktool とは

詳細はこちらの記事をどうぞ。(以下内容はこちらの記事を参考にさせて頂いています)

jagadgetaholic.blogspot.com



…要は、.apk→.zip にして解凍すると暗号化されて読めなくなってしまう所があるので
これ使って解凍しようね!ってことです。


何も知らなかった私がzip変換して解凍した結果をご覧ください。

f:id:manami1533:20181210133612j:plain

無様極めてますね。


 

今回は「既にAndorid Stdioを導入している」前提で話を進めていきます
(つまりJDK & Android SDKは導入済み)
私が行ったのは


①apktool.bat
②apktool_hogehoge.jar
7-zip
④展開したいapkに対応したandroid端末のframeworksファイル
➄展開したいapkファイル
の導入です

 

※Cドライブ直下に"apktool"って名前のフォルダを作っておいてください。

以降このファイルの中にDLしたものをぶち込んでいく形になります。

 

事前準備

①apktool.batの導入

Apktool - How to InstallこちらからDL
表示されたリンク wrapper script を開くとテキストが出てくるので、こちらをコピって一度テキストファイルapktool.txtとして保存。その後拡張子を.batに変更。
変更したものをapktoolフォルダに入れます。


②apktool_hogehoge.jarの導入

上記ページ内のリンク find newest here をクリック。
一番新しいものをDLしてapktoolフォルダの中に入れてください。
その際名前を"apktool.jar"に変えておくことを忘れずに


7-zip の導入

https://sevenzip.osdn.jp/download.html こちらからDL
この際、自分のwinに対応するbitを選択してください。
※Ctrl + S でCortanaを呼び出し、"ビット"と入力すると確認画面に飛べます✈




④展開したいapkに対応したandroid端末のframeworksファイル

これ抜くのがめんどくさかったです。

展開したいapkに対応したandorid端末を用意します。
端末とPCを繋ぎデバッグモード発動、adbを使用!

adb pull /system/framework framework

このコマンドを叩いてframeworkファイルを抜きましょう。

時間がかかるのでしばしお待ちを。
apktoolフォルダの中にframeworkフォルダが収納されている筈です。


⑤展開したいapkファイル

これは端末から直接PCに移動するか、ミラーサイトを使ってapkをDLしてください。
"欲しいアプリ名" "アプリの制作会社" "apk"でヒットすると思います(おそらく)


apktoolの使い方

まずapktoolフォルダにパスを通します。

cd C:\apktool


と打ち込んでください(=apktoolが入っているフォルダにパスの変更)

frameworkフォルダに入っているframework-res.apkファイルを、下記コマンドでapktoolにインストールします。

C:\apktool>apktool if framework\framework-res.apk

f:id:manami1533:20181210133631p:plain]

これでアクセス権がない等のエラーが表示された場合

C:\apktool>.\apktool if framework\framework-res.apk


と入力してみてください。

うまくいくとこんな感じ。
f:id:manami1533:20181210141154p:plain

次にapkファイルの展開を行います。

C:\apktool>apktool d hogehoge.apk


完了するとhogehogeファイルの中に展開されたapkファイルが格納されているはずです。

 

これをAndroid Studio で空けてみると……




よっしゃーーーーーーーーーーーーーー!!!!!!!

f:id:manami1533:20181210133548j:plain


…と、このように、中身を見ることが可能になるわけなんですね

Noviaはこれから、このアプリの中身がどうなってるのかゆっくり観察していくことにします…(*ΦωΦ)フフフ