adbはUSB接続だけでなく、TCP/IP経由でも端末に接続できる。connectで接続、disconnectで切断する。

connectでTCP/IP経由の端末に接続する

対象の端末側で、あらかじめadb tcpip <PORT>を実行してadbデーモンをTCP/IPで待ち受ける状態にしておく必要がある。

$ adb tcpip 5555
restarting in TCP mode port: 5555

その状態でconnectにホスト(IPアドレスまたはホスト名)を指定すると接続できる。ポートを省略すると5555番ポートが使われる。

$ adb connect localhost:5555
connected to localhost:5555

$ adb devices -l
List of devices attached
localhost:5555         device product:sdk_gphone64_arm64 model:sdk_gphone64_arm64 device:emu64a transport_id:12

接続済みのホストに対して再度connectを実行すると、エラーにはならず接続済みである旨のメッセージが表示される。

$ adb connect localhost:5555
already connected to localhost:5555

実機の場合は、USBケーブル接続時にadb tcpipを実行したあとケーブルを抜き、同一ネットワーク上から端末のIPアドレスを指定してconnectする使い方が一般的である。

存在しない接続先を指定するとエラーになる

待ち受けていないポートやアドレスを指定すると接続に失敗する。

$ adb connect localhost:9999
failed to connect to 'localhost:9999': Connection refused

disconnectで接続を切断する

connectしたホストを指定してdisconnectを実行すると、その接続だけを切断できる。

$ adb disconnect localhost:5555
disconnected localhost:5555

ホストを指定せずにdisconnectを実行すると、TCP/IP経由で接続している全端末を切断する。

$ adb disconnect
disconnected everything