Androidの開発速度を上げるためのadb環境改善
Android開発は1年以上ブランクがある感じなので色々と思い出しつつ、最新の環境に整えていっています。とりあえずこれまではEclipseだったのを、Android StudioとシミュレーターはGenymotionの環境にリプレイス。あとはadb周りなどのツール系の使い方をすっかり忘れ去ってしまったので再調査中です。
下準備
sdkのplatform-toolsとtoolsにパスを通しておく
export ANDROID_SDK_ROOT=/Users/ntaku/tools/android/sdk export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools export PATH=$PATH:$ANDROID_SDK_ROOT/tools
接続されているデバイスの確認
adb device
$ adb devices List of devices attached 192.168.56.101:5555 device 192.168.56.102:5555 device HT0CFPL02015 device
特定のデバイスに接続する場合、複数接続されているとエラーになるので、引数で端末を指定する必要がある。
$ adb shell error: more than one device and emulator $ adb -s 192.168.56.101:5555 shell root@android:/ #
ただ、いちいちコピペで指定するのは面倒なので、pecoと、adb-pecoをインストールして解決する。
(peco) $ brew tap peco/peco $ brew install peco (adb-peco) $ cd ~/tools/android $ git clone git@github.com:tomorrowkey/adb-peco.git adb-peco $ export PATH=$PATH:/Users/ntaku/tools/android/adb-peco/bin
これで、$ adbp shell とするとするだけで端末を選択できるようになって楽ちんに。
端末のログチェック
adb logcat
こちらも上記と同じく端末を選択する必要があるけれど、adbp使えばシェル上で選択できるので便利。
$ adb logcat - waiting for device - error: more than one device and emulator $ adb -s 192.168.56.101:5555 logcat or $ adbp logcat
ログを見やすくする
PID Catというライブラリをインストール。使い方はカラフルなAndroid Logcat “pidcat"を参照。単に pidcat と実行するだけでOKだけど、こちらもadb-pecoで対応されていて pidcatp で複数端末選択可能。
$ brew install pidcat $ pidcatp
adbの再起動
色々操作しているとAndroid Managerの方からadbに接続できなくなったり、pidcatで何もでてこなくなったりしてしまうケースがあったので、そういう場合はこのコマンドでadbを再起動。
$ adb kill-server $ adb start-server
アプリのアンインストール
こちらは開発中のアプリ削除して再インストールしてテストしたいとかよくあるので、このコマンドはすごく良さそう。端末操作して設定からアプリ探して..ってかなり面倒なので。
$ adbp shell pm list package | sed -e s/package:// | peco | xargs adbp uninstall
エイリアス設定
最後にエイリアスにまとめて終了!
alias adb-uninstallapp='adbp shell pm list package | sed -e s/package:// | peco | xargs adbp uninstall' alias adb-restart='adb kill-server; adb start-server' alias adb-pidcat='pidcatp --color-gc'