Android ADBデバイスはオフラインで、コマンドを発行できません


329

コマンドラインまたはEclipseでADBを使用してデバイスに接続できなくなりました。

コマンドを実行する

adb devices

デバイス名を返しますが、オフラインであると表示されます。

私が試したもの。

  1. Androidデバッグモードを切り替えました
  2. Google USBドライバーを再インストールした
  3. OSを以前動作していたバックアップ(CyanogenMod)に復元しました
  4. USBコードをスワップ。
  5. 電話/コンピュータを複数回再起動した
  6. Android SDKを更新しました

何が起こっているのか本当にわかりません。あなたが私が試すことができると思うものは何でも、私はすべて耳です。

明らかに、同じ問題が発生している場合、問題はおそらく古いSDKです。4.2.2以降、接続デバイスのRSAフィンガープリントを確認する必要があるセキュリティ機能があります。SDKマネージャーを開いてツールを更新してください!その後、再起動します。


22
別のUSBポートを試してください。
jayellos 2013

他のポートのみがusb3です
ブライアン

3
このような問題にも遭遇しました。私がしたことは、*コマンドadb kill-server、adb start-serverでした。*別のUSBポートを試してください。ほとんどはPCの背面で機能します。*デバイスを再起動します。* Eclipseを再起動します。*コンピュータを再起動します。* USBコードを変更します。最後に問題が解決しない場合は、デバイスUSBドライバーを再インストールします。
jayellos 2013


3
それは私にも同じことが起こりました。私の場合、開発者オプションを無効にしてから、再度有効にします。それだ。
Kyaw Nyiが2014

回答:


139

Nexus 7Galaxy NexusがAndroid 4.2.2にアップデートされた後、今日同じ問題が発生しました。

私にとってそれを修正したのは、SDKプラットフォームツールをr16.0.1にアップグレードすることでした。私の場合、このバージョンはSDK Managerに表示されなかったため、http://dl.google.com/android/repository/platform-tools_r16.0.1-windows.zipから直接ダウンロードしました。

次に、platform-toolsディレクトリの名前を変更して解凍しandroid-sdk-windows/platform-toolsます。SDK Managerを使用して、これまでに最新のsdk-toolsにも更新していました。

EclipseとADT全体が古い場合は、それらも更新する必要があるかもしれませんが、私はそうする必要はありませんでした。

注:最新のパッケージを表示する前に、SDK Managerを2回(自分自身を更新するために)実行する必要がある場合があります。


1
r17を使用していますが、同じ問題が発生します。r16.0.1に戻すと役立ちますか?
Alexander Suraphel 2013年

@spartacusわからないので、あなたの問題は今、他の場所にあるのではないかと思います。
hack_on 2013年

解決済み、Android SDKのプラットフォームが見つからないことが原因の問題
Tai Dao 2013

説明した順序で正確に動作しました。最後のステップは、電話で許可することです。
vlad

24
電話またはデバイスを再起動して楽しむだけで、他に何もadbを再起動する必要はありません。
UMAR 2013

135

実行したadb devices後で実行してみてくださいadb kill-server。その後、セキュリティの質問が表示されます。私のために働いた。


ドライバーが既に最新の状態で問題が解決しない場合に機能します。他の場合でも、うまくいくと思います。
kAmol 2015年

他のマシンをデバイスから切断してください。私の場合、仮想マシンホストはまだtcpip経由で接続されており、ゲストは引き続き正常に接続できましたが、オフラインでした。RSAプロンプトを表示するには、でゲストに接続する前に、ホストでadb kill-serverコマンドを実行する必要がありました。adb connect 192.x.x.x

その後のadb start-server
madz

一般的にはそれがトリックです。回答を受け入れるのは特別な場合です。
Ratul

私は電話で「xx:xx:xxからのUSBデバッグを許可する」を逃したに違いありません。サーバーを再起動してUSBを再接続すると、再びポップアップしました。
Dan Bolser

77

また、Wi-Fiモードを使用してデバイスに接続するときにも頻繁に発生するようです(Android Studioまたはコンソールで実行adb tcpip 5555するなど)。

修正するには:

  1. USB接続を切断します。Wi-Fiで接続している場合は、デバイスのWi-Fiをオフにします。
  2. Android Studio / Eclipse /その他のIDEを閉じます。
  3. adb kill-serveradbが実行されていないことを確認するために実行します。
  4. Androidデバイスを再起動します。
  5. デバイスが再起動したら、USB経由で接続してを実行しadb devicesます。これにより、ADBデーモンが起動します。これでデバイスが再びオンラインになります。

2
ステップ3がおそらくここでの主要な解決策です。コマンドラインインターフェイスを閉じ、まだ実行中の場合はプロセスを強制終了して、再試行してください。
reubenjohn 2014

これは私のための作品(Windows 7とギャラクシータブGT P7500)
Sarvan

Android 8.0とWindows 10で私のために働いた
andoni90

adb kill-serverAndroidデバイスを再起動せずにを試したところ、動作しませんでした。セクション4で説明したように、これらの手順を繰り返してデバイスを再起動すると、うまくいきました。
E235

62

4.2.2 OTAアップデートを実行しているNexus 7で同じ問題が発生しました。更新後、動作が停止するまで、USBとWi-Fi経由でADB接続があったことはほぼ間違いありません。修正するには、次を使用してSDKを更新しました。

android update sdk --no-ui

今私の開発ツールは:

  • SDK rev 16.0.2
  • SDKツールrev 21.1
  • SDK API 17、リビジョン2

1
「 'android'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されません。」-また、私のC:ドライブのルートから「dir android.exe / s」を実行しました-何も見つかりません-Linuxを使用していますか、またはWindowsユーザーにはない特別なビットを持っていますか?
BrainSlugs83 2013年

はい、Linuxを使用しています。androidは./sdk/tools/の下のシェルスクリプトであり、Android SDK Manager Javaアプリを開始します。Windows SDK tarballに対応するスクリプトが必要です。
dturvene 2013年

7
指定されたコマンドは、path \ to \ android-sdk \ tools \ディレクトリから実行される限り、Windowsで使用できます
ガジェット

4
Windows 7では、... \ android-sdk \ tools \ディレクトリからコマンドを発行して機能させるには、コマンドウィンドウを「管理者として」実行します。
John Jorsett、2013

Nexus 10とGalaxy Nexusでうまくいきました。Windows XP SP3を使用しています。私はusbポート、再起動、etc。を変更してみました。XPを再インストールするところだった、ありがとう!
2015年

44

USBポートの切り替えが重要であることを強調できません。多くの場合、フロントパネルのUSBポートに欠陥がある可能性があります。


5
私も働いた。Nexus 10はUSBポートに電流を流しすぎるように見えることがあります
skubo

ワウ、1/2時間のデッドエンドの後、これはUSB電源の問題であることが判明しました。ありがとう!
bigjosh 2016年

時にはそれは欠陥のあるポートではありません。私の場合、Windowsの起動中にUSBが差し込まれ、ADBドライバーが正しく読み込まれませんでした。取り外して、同じポートに再度差し込むだけです。Windowsの不思議...
Ricardo BRGWeb 2016年

1
ときどきポートの切り替えが機能します。さまざまなポート+ケーブル+デバイスの組み合わせからのUSB2とUSB3のサポートの問題である場合があります。前面ポートから背面ポートへの切り替え、または「SS」インジケーター(USB3)のあるポートとないポートの切り替えが役立つことがあります。別のケーブルを試すと解決する場合があります。
Jon Adams

私にとっては8時間の無駄です。USB 3.0では機能しますが、何らかの理由で(少なくとも私にとっては)USB 2.0では機能しません。今までその問題はありませんでしたが、突然3.0を使用しなければなりませんでした。これは私の3.0ポートの1つを無駄にしています。
ライアン

39

4.2.2について不思議に思う人のために、PCでのRSA検証を要求する電話に表示されるセキュリティの質問があります。ツールが更新されていて、問題のデバイスのセキュリティの質問を確認してPCへのアクセスを許可していることを確認してください。これで解決しました。

そしていつものように、開発者オプションでデバッグが有効になっていることを確認してください;)


7
USBデバッグ認証を取り消すと、うまくいきました。次に、USBデバッグを無効にしてから再度有効にします。「このコンピュータを許可してください」というメッセージが表示され、BAMはオフラインではなくデバイスとして表示されました。
CrazyPenguin 2013

21

複数のadb.exeファイル?

C:/ Windows /からOLD adb.exeのコピーを削除すると、問題が解決しました。adb.exeのコピーがC:\ Windows \にどのように到達したのかわかりません。

android-sdk / platform-tools /からadb.exeを起動すると、検出に問題はありませんでした。


これが私に起こったことです。2年前にROMをインストールするためにダウンロードしたものが原因だったと思います。
ゲンケフ2014

私のWindows 8にも同じ問題があり、名前c:\windows\adb.exeを別の名前に変更すると(adb.old.exe)問題が修正されました。再起動したり、コマンドラインを開いたり閉じたりする必要さえありませんでした。うまくいきます。adb devices古いadb.exeコンピュータの名前を変更した直後に入力すると、Nexus 7からこのコンピュータを認証するかどうか尋ねられました。adb devices「オフライン」の代わりに発行すると、「デバイス」と表示されます。
AlexStack 2014年

1
ありがとう、これは機能します!同じことが私にも起こりました。デバイスに付属のドライバーソフトウェアをインストールすると、adb.exeがC:\ Windowsにコピーされると思います。
thinzar00 14

それはどうやってそこに到達したのですか:/知りたい
Daniel Cheung

1
@DanielCheung私にとっては、KingORootやKingRoot PCプログラムをインストールするときでした。Android SDKがインストールされているユーザーに依存しないため、彼らは自分でバージョンをインストールしていると思います。そして、そう、Windowsディレクトリから作成した古いバージョン(1.0.26)を削除すると、「オフライン」の問題が修正されました。:)
Venryx 2016

20

USBデバッグをいったんオフにしてから有効にしてから、デバイスをシステムに接続してみてください:リンク


2
これは確かに、最も簡単で、確実で、最も速い方法です。このスレッドでは、すべてのメソッドのさまざまなバリエーションを使用しました。これは毎回機能する唯一のものです。Androidデバイスを3回タップするだけで問題は解決しました。
LDジェームズ

18

私はこの問題を抱えていましたが、他のどの回答も役に立ちませんでした。SDKを更新して4.2.2のAPIをインストールした後、必要だったものが実行されていました。

android update adb

私が抱えていたもう1つの問題は、ADBをWi-Fi経由で接続しようとしていたことでした。これは、私のMacのUSBポートが本当に問題ないため、これが唯一の選択肢です。残念ながら、ADB over Wi-Fiは4.2.2でセキュリティの質問を表示しないので、セキュリティの質問を受け入れるために、少なくとも1回は機能し、USBを介して接続できるUSBケーブルを見つける必要があります。 、Wi-Fi経由で接続できます。


これでうまくいきました。ありがとう。Nexus 7をアップデートしてから頭を壁にぶつけていました
Jason Southwell、2013

私はこのページとGoogleが表示した他のいくつかのサイトですべてを試しましたが、Android 4.0.3を実行しているHTC電話はまだオフラインとしてリストされていました。私はついに電話を再起動し、それからadbデバイスはそれがオンラインであると言いました。あの、もっと早く考えていたらよかったのに。
John Jorsett、2014年

このエラーが発生しました:wifiに関するコメントが見つかるまでデバイスはオフラインです-スマートフォンをwifiから外すとすぐに機能しました。ありがとう!
amurrell 2014

17

デバイスが通常USB経由で接続しているのに突然動作しなくなった場合、特にUSBケーブルを取り外して再接続した後は、他の回答で述べたより徹底的なことを行う前に、次の非侵襲的な手順を試してください。

adb kill-server
adb start-server
adb devices

デバイスの横に「デバイス」が表示されている場合は、正常に動作しています。

デバイスの横に「オフライン」と表示されている場合は、デバイスを再起動してみてください。デバイス上のADBデーモンがハングすることがあります。LogCatの実行中にケーブルを外したとき、およびWi-Fiまたはイーサネット経由の接続から切り替えた後、これにさらに気づきました。

デバイスがリストにない場合は、別のUSBケーブルとポートを試すことから始めて、他の回答の解決策を試す必要があります。それらの安いケーブルは悪くなる可能性があります。


それは私の問題を解決するのに役立ちました(Androidエミュレーターは「オフライン」として表示されていましたが、説明したようにサーバーを再起動した後は「デバイス」モードに戻っていました)。
Greg0ry 14年

1
何時間もadbが機能しない理由を見つけようとした後、それは実際にはケーブルでした!
マーティンL.

悪いケーブルに何度か噛まれました。不良ケーブルでも通常はデバイスが正常に充電されるため、別のケーブルを試す前に私も多くの時間を浪費していました。
スコット2014年

あらまあ、私はすべての解決策を試しましたが、最も簡単なもの、つまりTHE PHONEを再起動することは思いもしませんでした。それで問題は解決しました。
kibin 2015

私は短いケーブルを使用する必要がありました-私の携帯電話の充電に使用するケーブルは長すぎました!
リックモーテンセン2017

12

SDKツールを更新した後adbは、必ずplatform-toolsフォルダーから使用してください。

でコピーした古いバージョンのADBを使用していることに気付いた後、ようやくこれが機能しまし/usr/bin


このusr / binはどこにありますか?
AntWo

8

時々これはadbサーバーエラー(私は思う)が原因で起こるかもしれません。それはいつも言っています

"device-name is offline" from adb devices command.

サーバーを強制終了して、再起動してください。それは私のために働いた。

"adb kill-server"
"adb start-server"

7

adb connect <device_ip>私の問題は反対側にあったので、他の解決策を使用せずに使用しました。私はstop adbdそれを再起動する必要があったデバイス上でstart adbd。デバイスは再び「オンライン」になります。


1
この問題がWifi経由で接続するAmazon Fire TVスティックを持っていました。オフして、もう一度上のadbを切り替える、adb kill-serveradb start-server、その後、adb connect <device_ip>私のために働いた、上記のように示唆しました。
チェンウェア2016

6

私はこれが私のために修正した同じ問題を実行しました。最初にUSB経由で電話を接続してから、設定>>電話について>>ステータスにあるモバイルIPを確認し、次のコマンドを実行します。


adb kill-server
adb start-server
adb tcpip 5555 //it resets port so put port you want to connect
adb connect 192.168.1.30:5555 //ip:port of your mobile to connect
adb devices //you will be connected over wifi


adb tcpip 5555はポートをリセットしません。現在のデバイスのデフォルトポートを設定するだけで、デバイスに接続した後、WiFiネットワーク上でもIPアドレスを介してデバイスに接続するときにポートが不要です
Ehsan sarshar

5

dturveneと他のすべてのソリューションを試しましたが、うまくいきませんでした。私はもう一歩必要でした。

これらのコマンドを実行する

  1. adb kill-server
  2. android update sdk --no-ui
  3. adb start-server

動作を確認するには、コマンドの前後に「adb version」を実行し、それが最新であることを確認します。adb kill-serverコマンドの理由は、コマンドが実行されている可能性が高く、実行中は更新できないため、最初にコマンドを強制終了する必要があるためです。


5

私にとっては何もうまくいきませんでした。私は約12時間を費やしてインターネットを絶えず検索し、同様の問題を抱えている他の人々に役立つ解決策を試しました。

最後に、LAN経由でADBの処理を行うだけになりました。この設定はUSBデバッグ設定のすぐ隣にあり、ADBでは「adb connect [IPADDRESS]:[PORT]」でアクティブにできます。私の電話のポートは5555でした。

これにより、常に不利な点に対処する代わりに、誰かが仕事に戻るのに役立つことを願っています。


5

このアプローチは私にとってうまくいきました:

  1. adb kill-server
  2. デバイスマネージャーでオフラインデバイスを無効にする(下の画像を参照)
  3. デバイスマネージャーでデバイスを有効にする
  4. adb start-server

デバイスマネージャ、[表示]メニュー、[接続別のデバイス]:

ここに画像の説明を入力してください


4

最初に同じ問題(GitHubからダウンロードしたADB / fastbootを使用)に遭遇しましたが、最終的には問題なく動作しました。私のために働いたもの:

  • Android SDK。ADBバージョン:1.0.31
  • 前面のUSBポート(MacBook Pro 15)
  • DevオプションとUSBデバッグを有効にした後、電話を再起動します(設定を7回タップして>電話について>ビルド)。
  • デバイスがリストされていない場合はadbサーバーを強制終了します(adb kill-server)
  • デバッグアイコンが電話に表示されます。
  • RSA指紋確認ダイアログを確認するには、必ずロック画面のロックを解除してください。

4

最新のAndroid SDKをインストールしました。
デバイスのUSBポートを変更しました。
MTP-> Charge only-> MTPから変更されました。
出来た。


1
私にとって、「メディアファイルの転送」から「画像の転送」(PTP / MTP)に変更すると、問題が修正されました(Android SDKのアップグレード、異なるケーブルの使用、ADBの再起動、開発者モードのサイクリング、プラグを抜く/ USBを別のポートに再接続するなど)。不愉快なことに、この回答はスコアが0で、回答を探していたときに2ページ目に表示されたので、将来的に他の人を助けるために投票してください。
Steven Craft

3

以前にPCのRSAフィンガープリントを承認していて、運のない状態でadb kill-serverなどを試した場合、問題は、ロックされている間に接続しようとしていることだけかもしれません。スクリーンオンボタンを押してパターンを入力してみてください-これで修正されました。


3

私が考えた最善の方法は、デバイスマネージャーからデバイスを無効にしてから有効にし、adb devicesコマンドを実行することです。

  1. スタートタブに移動し、コンピュータを右クリックします
  2. ドロップダウンメニューから、[ 管理 ]をクリックします。
  3. コンピュータの管理画面で、[デバイスマネージャ]をクリックします
  4. 右側のペインで、ポータブルデバイスを展開してデバイスを見つけます
  5. デバイス名を右クリックし、ドロップダウンメニューで[無効にする]をクリックします
  6. 無効になったら、有効にする以外は手順5を繰り返します。

デバイスはオンラインに戻ります。より速いです。


3

不安定なADB接続を使用している人、およびMacにAndroid File Transferがインストールされている場合のもう1つの可能性:ファイル転送がADB接続を妨害しており、断続的に動作を停止していることがわかりました。

キリングAndroid File Transfer Agent.app(例えば、ネクサス7)互換性のあるデバイスを探しますがMacに接続されていることのプロセスは、私のための妙を硬化させます。


1
これが私にとってOS Xで問題を引き起こしていたものです、ありがとう!
adaam

3

誰も私の状況に対して答えを出していないので、あなたは〜/ .android / adbkeyファイルにアクセスできないかもしれません。最初にsudoでadbを開始すると、公開鍵ペアが生成され、これが〜/ .android / adbkey.pubおよび〜/ android / adbkeyに書き込まれます。もちろん、秘密鍵はchmod 600です-ホームディレクトリのルートでのみ読み取り可能です。その後、通常のユーザーとしてadbを開始すると、秘密鍵ファイルにアクセスできなくなり、「デバイスオフライン」で静かに失敗します。



3

デバイスがオフラインとして報告されるのは、adbがデバイスに接続できないためです。開発環境から実行可能なadbは、制御下のデバイスとの接続(ソケット)を作成します。デバイスには、この通信をリッスンするサービス(デーモン)があります。デーモンはadbdと呼ばれます(adbdaemonなど)。実際にデバイスでadbを有効にすると、このデーモンが開始されるため、デバイスとの通信を確立できます。

デバイスがadbによってオフラインとして報告されたのは、デーモンがもう実行されていないか、接続を受け入れない状態にあるためです。ほとんどの場合、これは、ネットワークがアクティブな(ネットワーク)接続でダウンした場合に発生します。

これを修正できる唯一の方法は、デバイスを再起動することでした。他の多くの方法でオフラインステータスを修正できますが、デバイスの再起動は常に機能します。


3

以下のようにすることと同じ問題に直面しているとき:

  1. adb kill-serverに続いてadb start-serverを発行してadbを再起動しますコマンドプロンプトでをます。
  2. 電話でUSBデバッグを無効にしてから再度有効にする
  3. それでも機能しない場合は、電話を再起動します。私の問題の99%はこれらの手順で解決されました。

4.別のUSBスロットにケーブルを接続してみます。それは私の場合は役に立ちました。
ドレッドキン

2

お使いのコンピュータに適切なドライバがないためです。それを修正するには:

  1. Android SDKをダウンロードして抽出する

  2. デバイスマネージャーに移動します(コンピューターを右クリック->プロパティ->デバイスマネージャー)

  3. 右側のペインでポータブルデバイスを展開して、デバイスを見つけます

  4. デバイス名を右クリックし、[ドライバーソフトウェアの更新]をクリックします。

  5. コンピューターを参照してドライバーソフトウェアを検索する

  6. ステップ1でAndroid SDKフォルダーを参照します。

  7. 次は完了です


私のWindows 7上とネクサス7とそれは動作を停止に同じ、私は、ドライバを削除し、再度インストールし、それが働いていた
のMichałK

私の場合、動作しないのはUSB 3.0コントローラードライバーです。電話のドライバーではありません!
VCD

2

次のようにadbサーバーを再起動してください。

adb kill-server

adb start-server

私もあなたと同じ問題に遭遇しました。また、adbサーバーを再起動すると、この問題が解決します。


2

更新できなくなるまで何度も更新しましたが、画面にプロンプ​​トが表示されませんでした。デバイスをオフラインのままにしました。

私の問題は、実際に更新されているディレクトリとは異なるディレクトリからADBコマンドを実行していたことです。

ADB exeの正しい更新済みディレクトリは次のとおりです。

C:\Program Files (x86)\Android\android-sdk\platform-tools\

2

デバイスを再起動します。私はここにリストされているすべてのものを試して、HTC電話(Android 4.0.3を実行)を機能adb devicesさせましたが、オフラインであると言い続けました。電話を再起動した後、ようやくオンラインになりました。ここでの他の提案のいくつかは、電話が認識される原因となった可能性がありますが、それらを試しているときに途中で数回の再起動を実行しても、確かに害はありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.