adb接続がうまくいかない時

ADB接続が何度かうまくいかなかったときに試した内容を記載します。

インターネット上を調べてみると、ADB接続が失敗することが結構あるみたいですね。

確認項目

① ケーブルを確認する
  データ通信ができるケーブルを使っているか

② アンドロイドのUSBデバックがONになっているか
  アンドロイドの開発者オプションを有効にして、USBデバッグをONにしてください

③ USB設定が「ファイルを転送」になっているか
  アンドロイドにUSBケーブルを指すと、「USB設定」画面が起動するので、「ファイルを転送」に変更する

④ ADBサービスが起動しているか確認する
  コマンドプロンプトを起動し次のコマンドからデバイスを認識しているか確認

# 正常起動した様子 
c:\>adb devices
* daemon not running; starting now at tcp:5037
* daemon started successfully
List of devices attached
********     device      <- ここにdeviceが表示されればつながっています

# 以下起動できないパターン

# adb.exe にパスが通っていない
c:\>adb
'adb' is not recognized as an internal or external command,
operable program or batch file.
 -> adb.exeが置かれているフォルダに移動するか、PATHを通す

# adb は起動しているが、デバイスを認識しない
c:\>adb devices
* daemon not running; starting now at tcp:5037
* daemon started successfully
List of devices attached
                         <- device を認識していない 

 adb は起動しているが、デバイスを認識しないパターンがたまにあります。
公式ドキュメントでは接続に失敗するときの対策についてadb kill-server を使った方法が書かれています。

$ adb kill-server
$ emulator -avd Nexus_6_API_25 -port 5557
$ adb start-server
$ adb devices

List of devices attached
emulator-5557 device

Android Debug Bridge(adb)

 私は、サービスを強制終了させたところ起動しました。
   c:\ > adb klill-server
を使ってもプロセスがうまく終了しないことがあるみたいです。

c:\ > netstat -nao | grep 5037
TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING       15992
c:\ >taskkill /F PID 15992   <- pid を直接指定してプロセスを終了させました
c:\ >adb devices
* daemon not running; starting now at tcp:5037
* daemon started successfully
List of devices attached
********     device

⑤ADBのバージョンが古くないか
 当環境のバージョンは
   Android Debug Bridge version 1.0.41
でした。

⑥他の情報を探す(参考にさせていただいたサイト)
 皆さんいろいろな方法で解決していました
 http://app.serialgames.jp/sgd/alog/manual/qa_adb_devices.htm
 https://qiita.com/couzie/items/2dd854df9c8c74317078
 https://jp.minitool.com/news/adb-device-not-found.html
 https://www.tunesbro.jp/blog/android-wont-connect-to-windows-over-adb-how-to-fix-in-3-easy-steps.html

 SHARP AQUOSフォンでは一部のバージョンでADBに接続できないよう(ドライバダウンロード先)
  https://k-tai.sharp.co.jp/support/developers/driver/index.html

 ADBに繋がらなくて困っている人は結構いるみたいです。