2012年03月27日
ABC2012 SpringでADBの話をしました
2012年3月24日、東京大学本郷キャンパスで開催された
Android Bazaar and Conference 2012 Spring(ABC2012 Spring) でADBの話をしました。そのときのビデオが公開されています。
発表資料はABS2012で使用したものと同じです。ただし時間が20分しかなかったため、かなりあわてて話しました。開始前の休憩時間を使ってデモを見せようとしましたが、ちょっと無理でした。
2つのエミュレータを立ち上げて、片方から他方にadbでつないで、adb installでアプリをAndroid端末からAndroid端末にインストールできるということを紹介しようとしました。
ただし標準のエミュレータではlocalhost以外からのsocket通信を受け付けないので、スライドの中で紹介しているパッチをあっててビルドしなおしたものを使う必要があります。
デモの説明で誤りがありました。
最初に片方のemulatorにadb shellで入り、そこでadb devicesとすると自分自身しか見えませんが、これは「デフォルトではUSBモードで起動しているため」ではなく、エミュレータではUSBは無いのでTCPモードで起動しているのですが、「localhostのソケットにつなごうとするため」自分自身しか見えません。 次に、いったんadb kill-serverしてから、環境変数ADBHOSTに接続先のIPアドレスを指定して再度トライしました。しかしこのときadb devicesとするべきところをadb shell と打ったので、エラーになってしまいました。
ここで時間切れになってしまいましたが、この状態でadb devicesで2つのemulatorが見えるはずなので、そこで、シリアルナンバーを明示してadb shellを実行すれば、Android端末からAndroid端末にログインできます。同様にadb installも実行可能です。
関連するページ
Android Builders SummitでADBの話をしました