Wzero-3をAndroid開発機化して遊ぶ(adb接続編)
Androidデバイスはadbインタフェース(物理層はUSB/ネットワーク層はIP)で、PC側からさまざまな制御を行えます。
このadb接続の機能の一例としては、アプリの追加やシェル接続、ログ出力等があります。
今回は、この機能を有効にしてWzero-3を開発機がわりにした際の流れを記事にしてみました。
- 利用手順
一応注意書き:最悪端末を壊す可能性があるのでわかる方のみ自己責任でお願いします。
- 参考&準備するもの
- Wzero-3 Android化(詳細はW-zero3用Android(R1.5) 公開します。 - .h2oのお気楽日記)
- ネットワーク設定(詳細はWS011sh(Linux)をUSB Ethernet/RNDISでネットにつなぐ。 - .h2oのお気楽日記)
- Android SDK
- ネットワーク図
- 手順
今のところ、LinuxLoaderからの直接起動ではadb接続が利用できません(ネットワークの設定が行えないため)。
そのため、起動方法を変更しネットワーク設定を行った後にAndroidを起動する手順になります。
-
- LinuxLoaderの設定変更
LinuxLoader側のConfigファイル"LinuxLoader.parm" のCommandLineを修正する。
CommandLine= fbcon=rotate:3
-
- LinuxLoaderを起動後、コマンドからrootでログインしネットワークの設定を行う。
詳細はWS011sh(Linux)をUSB Ethernet/RNDISでネットにつなぐ。 - .h2oのお気楽日記を参考
コマンドライン例:
# mount /dev/mmcblk0p1 /mnt # cd /mnt # mkdir rfs # mount -o loop android.img rfs # chroot rfs /init
-
- 環境変数を設定(以下PC側の作業)
環境変数"ADBHOST"にAndroid端末のIPアドレス(この例では192.168.0.2)を設定してあげてください。
参考:
http://www.atmarkit.co.jp/fwin2k/win2ktips/189setenvv/setenv.html
-
- adb起動と確認
コマンドプロンプトを起動し以下のコマンドを実行。
>adb devices List of devices attached emulator-5554 device
この表示が出れば通信事態は正常に行われています。
あとは以下のコマンドでシェル接続を行えます。
>adb shell #
- 終了方法
adb接続時はシェルからrebootコマンドをたたいてあげたほうが安全だと思います(特にファイル等に書き込みをした場合:多重マウントを行っているので、急な電源OFFはSDカード上のイメージ損傷に繋がりやすいと思います)。
>adb shell # sync # reboot
adbが利用可能になると、自分で開発したアプリをWzero-3(Android)に送り込み、動作検証することが出来ます。
自分の作ったアプリが、エミュレータでなく実機で動くのは結構楽いです!