LoginSignup
0

More than 5 years have passed since last update.

Android: "adb server is out of date. killing..."

Last updated at Posted at 2018-11-03

初稿2010/7

はじめに

adbはserverとclientのversionが食い違っていると、
"adb server is out of date. killing..."を出力して、serverを再起動してしまいます。
同一LAN上に複数のターゲットと1台の共有Linuxサーバがぶら下がっていてみんなで開発したりする場合、共有linuxサーバ上でみんなが起動するadb-clientのversionを合わせるように気をつける必要があります。
このような場合、adbは以下のプロセス構成で動いていて、serverはadb-client起動時に(既に起動していなければ)自動的に起動されます。

[ターゲット]              [共有linuxサーバ]          [共有linuxサーバ]
adb-daemon1 -----------¥                 /----------- adb-client1
adb-daemon2 --------------- adb-server -------------- adb-client2
adb-daemon3 -----------/                 ¥----------- adb-client3

この対策は単純に(各々localにインストールしたadbではなく)全員が同じadb (例えば/usr/local/toolsにインストールしたadb)を使うように強制すればOKです。

共有linuxサーバからみんなで使うには

1) ターゲットにselialコンソールで接続してIPアドレスを設定する

速度:115200

2) 実機のIPアドレス設定

# ifconfig eth0 10.61.1.x netmask 255.255.0.0

3) 確認

# ifconfig eth0
eth0: ip 10.61.1.x mask 255.255.0.0 flags [up broadcast running multicast]
# netstat
Proto Recv-Q Send-Q Local Address          Foreign Address        State
tcp        0      0 127.0.0.1:5037         0.0.0.0:*              LISTEN
tcp        0      0 0.0.0.0:5555           0.0.0.0:*              LISTEN

4) 共有linuxサーバからターゲットに接続する

5) 【準備】共有linuxサーバにログインし、.cshrcにpathを追加する

$ vi ~/.cshrc
  set path = (. /usr/bin /bin /etc /usr/etc /usr/local/bin /usr/local/tools)

上記のようにpath設定に「/usr/local/tools」を追加

$ source  ~/.cshrc

6) 確認

$ which adb
/usr/local/tools/adb
$ adb version
Android Debug Bridge version 1.0.26

7) adb-serverにターゲットへの接続情報を登録

$ adb connect 10.61.1.x:5555  <--5555はselialコンソールから、netstatで確認したport-no
connected to 10.61.1.x:5555

8) 接続情報の確認

$ adb devices
"List of devices attached"
"10.61.1.11:5555 device"
"10.61.1.x:5555 device"  <--- "10.61.1.x:5555"がシリアルNo
"10.61.1.6:5555  device"

9) 自分のシリアルNoを指定してloginする

$ adb -s 10.61.1.x:5555  shell

** シリアルNoは環境変数"ANDROID_SERIAL"に設定して使うのが楽かも

$ setenv ANDROID_SERIAL 10.61.1.x:5555
$ adb shell

参考

adbのマニュアル http://www.muo.jp/android16/?developing/tools/adb.html

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0