web-dev-qa-db-ja.com

Android emulator-5554オフライン

Emulator-5554に問題がありますが、オフラインであると表示され続けます。

コマンドラインからadb devicesを実行すると、

emulator-5554 offline

新たに再起動した後でも、そのコマンドを試しても、まだオフラインであると表示されます。

問題は、コマンドプロンプトからabd install <path>を使用してエミュレータに.apkファイルをインストールしようとすると、別のデバイスを作成して実行すると.apkファイルをインストールしようとすると、オフラインであることを教えてくれます接続しているデバイスが多すぎます。つまり、.apkファイルをインストールできません。

エミュレーター-5554をどうやって取り除くことができますか?再起動すると、すべてのデバイスがクリアされるはずですが、それは機能していないようです。コンピューターの起動時に初期化されているようです。誰もこの問題に遭遇しましたか?

ありがとう

116
hanesjw

このような場合、エミュレータが再び動作を開始することを保証するために、次のすべてを実行できます。

  1. Cmdに移動してadb kill-serverと入力します
  2. タスクマネージャーに移動し、プロセス内でadbを見つけます。見つかったら、それを右クリックし、プロセスツリーの終了をクリックします。
  3. Eclipseで、Window> Android Virtual Device Managerに移動し、起動するAVDをクリックし、開始をクリックして「スナップショットから起動」のチェックを外し、起動をクリックします。

それでおしまい!しばらく時間がかかり、問題が解決するはずです。

51
Kshitij Mittal

1この問題を解決するには、単に「データをワイプ」してください。

enter image description here

2。動作しない場合は、エミュレートされたデバイスに移動して開発者オプションを有効にし、USBデバッグを有効にします

84
Xakiru

Androidがエミュレーターを検出する方法は、ポート5555から始まるポートをスキャンすることです。

adb devicesリストに表示される番号(あなたの場合は5554)は、adbが開いているポートよりも1つ少なくなります。

ポート5555でリッスンしているプロセスが実行されている可能性があります。「オフライン」デバイスを取り除くには、そのアプリケーションを見つけて閉じるか、別のポートをリッスンするように再構成する必要があります。

22
Brigham

このソリューションはWindows用です。

@ Chris Knightのソリューション forMac/Linuxを参照)

  1. Windows Powershellを起動します。

    スタート->「powershell」と入力-> Enterキーを押します

  2. 次のコマンドを実行します:adb devices


PS C:\Users\CJBS>adb devices
List of devices attached
emulator-5656   Host
emulator-5652   Host
12b80FF443      device

この場合、12b80FF443は私の物理デバイスであり、エミュレーター*エントリーはゴミです。

  1. @ Brigham 、「Androidがエミュレータを検出する方法は、ポート5555から始まるポートをスキャンすることです。」ポート番号は、エミュレーター名の後に示されます(この場合は5656および5652)。チェックするポート番号は、エミュレータのポート番号に1を加えたものです。したがって、この場合:

    5656 + 1 = 5657

    5652 + 1 = 5653

    これらのポートを使用しているプログラムを見てみましょう。この場合、チェックするポートは両方とも「565」で始まります。そこで、565から始まる使用中のポートを検索します。実行:netstat -a -n -o | Select-String ":565"


PS C:\Users\CJBS> netstat -a -n -o |  Select-String ":565"

  TCP    127.0.0.1:5653         127.0.0.1:5653         ESTABLISHED     5944
  TCP    127.0.0.1:5657         127.0.0.1:5657         ESTABLISHED     5944
  1. この出力の最後のフィールドはPID(プロセスID)です。この場合、これら2つのポートの両方のPID 5944です。それでは、このプロセスIDを見てみましょう。実行:tasklist /v | Select-String 5944。 5944を前のコマンドの出力に置き換えます。

PS C:\Users\CJBS> tasklist /v | Select-String 5944

adb.exe                       5944 Console                    1      6,800 K Running         MyPCName\CJBS          0:06:03 ADB Power Notification Window

驚いた。それはADBです。他の回答で指摘されているように、他のプログラムでもある可能性があります。

  1. ここで、このプロセスIDを強制終了します。 kill 5944を実行し、5944を前のコマンドのPIDに置き換えます。

PS C:\Users\CJBS> kill 5944
  1. スプリアスエミュレータがなくなったことを確認するには、次のコマンドを再実行します。adb devices

PS C:\Users\CJBS>adb devices
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
12b80FF443      device

ADBが再起動し(以前に強制終了されていたため)、偽のエミュレーターは検出されません。

20
CJBS

LinuxまたはMacを使用していて、オフラインデバイスが「emulator-5554」であると仮定すると、次を実行できます。

netstat -tulpn|grep 5554

次の出力が生成されます。

tcp        0      0 127.0.0.1:5554          0.0.0.0:*               LISTEN      4848/emulator64-x86
tcp        0      0 127.0.0.1:5555          0.0.0.0:*               LISTEN      4848/emulator64-x86

これにより、プロセスID 4848(おそらく異なる)がポート5554でリッスンしていることがわかります。このプロセスを次のように強制終了できます。

Sudo kill -9 4848

ゴーストオフラインデバイスはもうありません!

8
Chris Knight

私の場合、adbがうまく機能しないプロセスが見つかりました。
奇妙なプロセスを強制終了し、「adbデバイス」を実行してテストすることができます。

それは私のために働いた:
プロセス名MONyog.exeを強制終了します

7
Ryan Ou

私はコマンドプロンプトを開いてこれを解決しました:

adb kill-server

adbデバイス

起動後、ADBはデバイス/エミュレーターを検出します。

7
DagW

私も同じ問題を抱えていました。ここで説明したすべてのソリューションを試しましたが、助けにはなりませんでした。次に、Android Virtual Device Managerのすべてのエミュレーターを削除し、新しいエミュレーターを作成しました。問題はCPU/ABIAndroid Virtual Device Managerのシステムイメージ設定にありました。システムイメージx86を使用するWindows10マシンエミュレーターでは、システムイメージx86_64を使用するエミュレーターが正常に機能している場合、常にオフラインです。これに注意してください

AVD Managerから、ドロップダウンの[Cold Boot Now]オプションを試してください。それは私のために働いた!

6
Paulo Taylor

私はついにこの問題を解決しました。開発者オプションから設定Emulator、少し下にスクロールして、USBデバッグをオンにしました。すぐにデバイスがオンラインで認識され、その問題に直面しなくなりました。私はAndroidスタジオとエミュレーターを再起動し、adbプロセスが、それらは動作しませんでした。

アクションドロップダウンのAVDマネージャーリストから:今すぐコールドブート

上記のすべての痛みなしに再起動します。

4
Alp Altunel

エミュレーターへのUSBデバッグを有効にする

  1. [設定]> [電話について]> [ビルド番号]> 7回タップして開発者になります。
  2. 設定>開発者オプション> USBデバッグ。

それは楽しみです

3
Dhaval Jivani

書くだけ

adb -e reboot

そして、adbに満足してください))

3
oleg gutov

「ユーザーデータのワイプ」オプションがついに私の問題を解決しました。エミュレータを起動するたびにユーザーデータを消去するだけです。これは私にとって常に機能します!私はWindows 8 x64、Eclipseを使用しています

3
Sunil Kumar

私の場合、「今すぐコールドブート」で開始し、[メッセージ]をクリックして接続を許可しました。

2
Marcus Menezes

Windowsタスクマネージャーに移動し、プロセス「adb.exe」を終了します。同じプロセスのインスタンスが複数存在する可能性があるため、必ずすべてを終了してください。

2
Rohit

「Xamarin」、「Android」、「adb」、「Google」、「AVD」、またはあらゆる種類のエミュレーターを使用して、私の人生の残りの部分で何もすることがないように解決することで問題を解決しましたテストされていないバグに乗った排泄物の蒸し山

2
Richard Hammond

Bluestacksがインストールされていますか?実行すると、実行されるバックグラウンドプロセスにより、オフラインデバイス「emulator-5554」が作成されます。

タスクマネージャーに移動し、「Bluestacks」の説明ですべてのプロセスを終了します

2
cw1998

私の場合、エミュレーターはOreo以下で動作していましたが、Pieでは動作していませんでした。最終的に機能したのは、エミュレーターを最新(バージョン28)に更新することでした。

2
PulseJet

使用しているadbリビジョンが最近ではない場合、エミュレーション環境が「オフライン」として表示されることがわかりました。パスを適切に更新(および古いadbバージョンを削除)し、「adb kill-server」、「adb devices」で、エミュレーション環境が「オフライン」として表示されなくなりました。

その時点ですぐに「adb Shell」を使用できました。

1
Keitai Otaku

エミュレーターが既に開いているか実行されている場合は、オフラインであることを通知します。コマンドライン(Ubuntu)を再確認して実行できます:

 adb devices

エミュレーターをオフラインで表示し、実行中のエミュレーターのインスタンスを閉じて(ポートがビジーとして表示されるため)、その後、アプリケーションを実行する必要があります。これが誰かを助けることを願っています。

1
G Jeny Ramirez

AVDを削除して再作成しましたか?ユーザーの/.Android/avdサブディレクトリにあるディレクトリに移動して、AVDファイルを手動で削除できます。

1
JRL

仮想デバイスでも同じ問題が発生しました。この問題は、Playストアが統合された仮想デバイスのOreoイメージが原因です。この問題を解決するために、Play Storeを統合せずに新しいデバイスをインストールしましたが、すべて問題ありませんでした。

お役に立てば、さようなら

1
furdu

ADB統合の有効化がマークされていることを確認してください。 [ツール]> [Android]> [ADB統合を有効にする]に移動します。

チェックされていない場合、このオプションをチェックし、仮想デバイスを閉じてから再度開きます。これは私のために働いた..幸運!!

1
Leo Santana

エミュレータを開き、

設定->エミュレートされたデバイスについて->ビルド番号を繰り返しクリックします->開発者向けオプションを開きます-> USB debugginを開きます

1
zhiqiu lin

私はすべてを試しましたが、私の場合はこれだけが機能します:SDKマネージャーを使用して、システムイメージを再インストールします。 Android St​​udio、[構成]、[SDKマネージャー]、[スタンドアロンSDKマネージャーの起動]の順にクリックし、[Google API Intel x86 *システムイメージ]、[Intel x86 Atom *システムイメージ]をすべてチェックしてインストールします。その後、Android studioを再起動します。

AVD Managerで仮想デバイスを再構成して消去する必要がある場合があります。x86バージョンを選択してください。

1
EricF

これを試して ...

  1. 実行中のエミュレータを閉じます。

  2. エミュレータを再度起動し、オンラインになるのを待ちます。

  3. commandpromptにコマンドを入力してEnterキーを押します:adb tcpip 5555

(一度に1つのエミュレータのみが実行されていることを確認してください。)

  1. adb -s emulator-5555 emu kill

  2. Enterキーを押します。

  3. できた.

  4. コマンドの「adb devices」コマンドでデバイスを確認します。

1
WonderSoftwares

ここで別の可能な解決策を追加します。これは私の場合でうまくいきました。

SpiceWorksEventProcessorと呼ばれるプロセスが実行されており、ポート5555を使用しており、adbによってエミュレーターとして読み取られているようです。そのプロセスを殺すことが、ついにその頑固なエミュレーターデバイスを私のために取り除いたのです。

これが何であるかはわかりませんが、もしそれがあれば、それがオフラインエミュレータの原因かもしれません。

乾杯

0
HarvesteR

私の場合、「GPU Host」のチェックを外し、動作しました:)

0
qasanov

MACでは、アクティビティモニターユーティリティを使用できます。Linuxとは異なり、MACではnetstat -tulpnコマンドを使用できないためです。エミュレータの実行中のインスタンスを検索します。通常はqemu-system-i386です。そのインスタンスを強制終了すると、ゴーストエミュレーターが実行されていないことがわかります。

アクティビティモニターユーティリティを取得する最も簡単な方法は、スポットライト検索を使用することです。 cmd-spaceを押してActivity Monitorと入力するだけです。

0
Anus Kaleem

ギアavdを再度削除して作成するだけで機能します。

0
Gagandeep Singh

私の場合、原因は、Android-x86を使用してVMを再開したことです。 Android-x86でVMを再起動し、adbサーバーを再起動すると、問題が修正されました。

0
Ullrich

adbデバイスの未承認のエミュレーター5554 を参照してください。 API 29エミュレーターでadb devicesコマンドを実行し、emulator-5554 unauthorizedメッセージを受け取りました。次に、Google APIsからではなく、Google Playイメージ(私の場合はQ、x86)から新しいavdデバイスを作成しました。

0
CoolMind

これは、マシンに別の仮想デバイスがインストールされているためです。 Bluestacksかもしれませんが、私も同様の問題に直面していました。 Bluestacksをアンインストールし、adb devicesを確認しました。

0
Aditya Harsh

上記のすべての答えが役に立たなかったので、エミュレータを削除して再作成し、すべて正常に動作しました

0
user5546454

AVDマネージャーからユーザーデータを消去し、adb kill-serverおよびadbデバイスを入力するだけです。データを消去すると、システムのメモリスペースも大幅に節約されます。

0
sanjeeb