質問: **「ネットワーク経由でadb実行」後、しばらく経って再度「ネットワーク経由でadb実行」する場合について** ・リンク先内容は、常に最初にUSB接続が必要でしょうか? ・再度USB接続が必要な要件を知りたいです ・色々試してみたのですが、「adb disconnect」後「adb connect xxx.xxx.xxx.xxx」コマンドを打つだけで繋がる場合もあるし、再度USB接続しなければつながらない場合もあり、何によって挙動が変わるのかよく分かりません
回答: > > ・リンク先内容は、常に最初にUSB接続が必要でしょうか? > > > 必要です。以下の実行でUSB接続している必要があります。 ``` $adb tcpip 5555 ``` 補足するとadb接続では端末側のadbd(daemon)とホストPC側のadbd(daemon)が存在し、通常端末側のadbd(daemon)はUSB経由でのadb接続を待ち受けています。 上記のコマンドは、ホストPC側のadbdからUSB経由で端末側のadbdにWi-Fi接続(WiFiだけとは限りませんが)での5555ポートでadb接続を待ち受けるように指示するコマンドです。 ``` <ホストPC>adbd ---- USB ---> <端末>adbd ``` このコマンド実行で端末側のadbdがUSBではなくipで待ち受けるようになり、Wi-Fiでのadb接続が可能になります。 (逆にUSBからのadb接続ができなくなるはずです。端末側の実装依存にはなりますが) > > ・再度USB接続が必要な要件を知りたいです > > ・色々試してみたのですが、「adb disconnect」後「adb connect xxx.xxx.xxx.xxx」コマンドを打つだけで繋がる場合もあるし、再度USB接続しなければつながらない場合もあり、何によって挙動が変わるのかよく分かりません > > > 端末側のadbdの待ち受けがUSBになっていたらUSB接続し、上記コマンドの実行からやり直す必要があります。 「adb disconnect」「adb connect xxx.xxx.xxx.xxx」のコマンドはWi-Fi経由でのadbの接続/切断を指示するコマンドです。 端末側のadbdがUSBで待ち受けていたら、コマンド実行しても意味がありません。 コメントにもありますが、端末側のメーカー実装次第で再度USB接続が必要かどうかは、様々なケースがあり得るので明確な回答は難しいです。 ・USB抜き差しを検知して端末側のadbdの待ち受けがUSBに変わる(かもしれない) ・ネットワークの変更を検知して端末側のadbdの待ち受けがUSBに変わる(かもしれない) ・その他何かの変化を検知して端末側のadbdの待ち受けがUSBに変わる 複合条件の可能性もありますし、必要な要件を確実に知りたいのであれば端末の製造メーカーに問い合わせた方が良いと思います。 1つだけ明確にわかる条件は端末を再起動するとadbdは初期状態のUSB待ち受けになると思います。