🧊

Android(実機)でconsole.logできちゃうADM

ADM(Android Device Monitor)っちゅー便利なもんがあるんよ。

ってメモをまさか70日前に書いて放置してたので放出します・・。

注:以下、Macでの話です。

Android SDKのダウンロード

ここから。

参考:Android SDK | Android Developers

ダウンロードしたら、展開。

移動したりパス通したり

適当に移動させます。(以下の例はデスクトップにダウンロードした)

mv ~/Desktop/adt-bundle-mac-x86_64-20131030 /Applications/AndroidSDK

で、パスを通す。

export PATH=/Applications/AndroidSDK/sdk/tools:$PATH
export PATH=/Applications/AndroidSDK/sdk/platform-tools:$PATH

すると、adbコマンドが使えるようになります。

動作確認

adb version 
# Android Debug Bridge version 1.0.31

したらば、USBで端末を接続します。
接続できてるかどうかは、

adb devices

とすれば表示されます。

ケーブルが悪いなどの理由で、リストされない場合があります・・・ありました・・。

Device Monitor

ここまできてやっと、です。

パスを通してあるので以下のコマンドが使えるはず。

monitor

なにやらEclipseライクな何かが立ち上がったはず・・。

そして、画面左の"Devices"ウィンドウから、接続した端末を選んでなんやかんやすると、
標準では画面下の"Log Cat"ウィンドウにログがばーっと流れるようになります。

ログをフィルタする

何もしないままでは、Androidの動作全部に関するログを見る羽目になるので、必要なのだけフィルタします。

それらしいフィールドがすぐソコにあると思うので、

tag:browser

と入れておくと、ブラウザまわりのログだけが見れるようになり、晴れてconsole.logが見れちゃうわけですね。
ちなみに、コロンの前後にスペースとかいれるとダメです。

いやー、便利ですねー。(と同時に、Androidの気持ちを知る側に一歩近づいてしまった感)

HTC系とか、残念ながらそもそもログが出ない端末もあるみたいなので、そこはご注意を。

標準ブラウザ相手にはこういうことしなきゃですが、
ターゲットがAndroidChromeな場合は、PCのChromeからいつも通りデバッグできちゃいます。
現時点ではCanaryとか使わなきゃダメですけど。