adbコマンドを使ってmacにUSB接続されたAndroid端末の情報を取得することができます。ただしUSB接続前に端末で 設定->開発者向けオプション->USBデバッグにチェック 設定をしないといけないです。
1. Android Studioのインストール
こちらから『Android Studio』をダウンロード&インストールします。
2. adbのインストール
『adbをMacのターミナルで使えるようにする』がとてもわかり易く書かれているのでその手順通りにインストールします。
3.1. adbに端末を認識させる
基本的に何もしなくても端末を認識できるんですができない機種もあるようなので adb_usb.ini に以下コマンドで端末のVender IDを登録します。(※あくまで自分の環境でのコマンドです。)
1 |
mizutanikirin$ system_profiler SPUSBDataType | grep ^' Vendor ID' | egrep -v '0x05ac|0x0424' | sed -e 's/ //g' | sed -e 's/VendorID://g' | sed -e 's/(.*//g' >> ~/.android/adb_usb.ini |
system_profiler SPUSBDataType は他の記事にもしていますが端末がUSB接続されているかの確認ができるコマンドです。grep、egrep、sedコマンドをパイプすることで接続されたVender IDだけを抽出できるようにします。それを adb_usb.ini に追加書き込むようにしたのが上記コマンドになります。
ちなみに egrep -v '0x05ac|0x0424'は接続前から認識されているUSBのVendor IDを除外するというコマンドです。
3.2. adbに端末を認識させる(自動化方法)
接続されるごとに手作業でコマンド打つのもなんなんでこの辺は別プログラムでAndroid端末が接続されたら adb_usb.ini に自動的に登録させるようにすればいいでしょう。例えば以下のように。
1. 定期的に system_profiler SPUSBDataType で新たにUSB接続されていないかを監視。新しく接続されたら2へ。
2. adb devices コマンドを実行してリストに表示されない場合以下を実行する。
1 |
mizutanikirin$ system_profiler SPUSBDataType | grep ^' Vendor ID' | egrep -v '0x05ac|0x0424' | sed -e 's/ //g' | sed -e 's/VendorID://g' | sed -e 's/(.*//g' >> ~/.android/adb_usb.ini |
3. adbを再起動する
1 2 |
mizutanikirin$ adb kill-server mizutanikirin$ adb start-server |
4. Android端末の情報取得
1. 端末をデバッグモードにする
始めに書いたようにUSB接続前に 設定->開発者向けオプション->USBデバッグにチェック をします。
2. 情報の取得
バッテリの情報を取得する場合
1 |
mizutanikirin$ adb shell cat /sys/class/power_supply/battery/capacity |
とか
1 |
mizutanikirin$ adb shell dumpsys battery | grep level |
で取得可能です。他にもadbでいろいろ取得できるので試してみてください。
コメントを残す