han*_*sjw 121 android android-emulator
我遇到了模拟器-5554的问题,它一直告诉我它是离线的.
当我adb devices从命令行执行a时,它说
emulator-5554 offline
即使重新启动后,我也会尝试该命令,但它仍然表示它处于脱机状态.
问题是当我尝试使用abd install <path>命令提示符将.apk文件安装到模拟器时,它告诉我它是脱机的,如果我创建另一个设备并运行那个,然后尝试安装.apk文件,它说我有太多设备连接.换句话说,我无法安装我的.apk文件.
我怎么能摆脱那该死的模拟器-5554?我听说如果你重新启动它应该清除所有设备,但这似乎不起作用.就像它在我的电脑启动时被初始化一样.有没有人遇到过这个问题?
谢谢
Xak*_*iru 88
1.只需"擦除数据"即可解决此问题.
2.如果它不起作用,请转到模拟设备并启用开发人员选项>启用USB调试
Ksh*_*tal 54
在这种情况下,您可以执行以下所有操作以确保您的模拟器再次开始工作:
而已!它需要一段时间,它应该解决您的问题.
Bri*_*ham 22
Android检测仿真器的方法是从端口5555开始扫描端口.
您在adb devices列表中看到的数字(在您的情况下为5554)将比adb查找打开的端口少一个.
您可能正在运行正在侦听端口5555的进程.要删除"脱机"设备,您需要找到该应用程序并将其关闭或重新配置以侦听其他端口.
CJB*_*JBS 20
(请参见@克里斯骑士的解决方案为苹果机/ Linux的)
启动Windows Powershell:
开始 - >键入'powershell' - >按ENTER键
运行以下命令:adb devices
PS C:\Users\CJBS>adb devices
List of devices attached
emulator-5656 host
emulator-5652 host
12b80FF443 device
Run Code Online (Sandbox Code Playgroud)
在这种情况下,12b80FF443是我的物理设备,而emulator-*条目是垃圾.
Per @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
Run Code Online (Sandbox Code Playgroud)
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
Run Code Online (Sandbox Code Playgroud)
真是一个惊喜.这是亚行.正如其他答案所指出的,它也可能是其他程序.
kill 5944,用上一个命令中的PID替换5944.PS C:\Users\CJBS> kill 5944
Run Code Online (Sandbox Code Playgroud)
PS C:\Users\CJBS>adb devices
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
12b80FF443 device
Run Code Online (Sandbox Code Playgroud)
ADB重新启动(因为它之前已被杀死),它不再检测到伪造的虚拟器.
如果您使用的是Linux或Mac,并且假设脱机设备是"emulator-5554",则可以运行以下命令:
netstat -tulpn|grep 5554
Run Code Online (Sandbox Code Playgroud)
产生以下输出:
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
Run Code Online (Sandbox Code Playgroud)
这告诉我进程ID 4848(你的可能会有所不同)仍在侦听端口5554.你现在可以使用以下命令终止该进程:
sudo kill -9 4848
Run Code Online (Sandbox Code Playgroud)
而ghost离线设备已不复存在!
我也有同样的问题.我已经尝试了所有这里描述的解决方案,但他们没有帮助我.然后我删除了Android虚拟设备管理器中的所有模拟器并创建了新模拟器.问题出在Android Virtual Device Manager的CPU/ABI系统映像配置中.在我的Windows10机器模拟器上,系统映像始终处于脱机状态,其中带有系统映像的仿真器正常工作.请注意这一点x86x86_64
在模拟器中启用 USB 调试
这就是享受
我终于解决了这个问题,我不得不去开发人员选项从设置在仿真器,然后向下滚动了一下,打开了USB调试。立刻我的设备在网上被认可,而我不再面临该问题。我尝试重新启动android studio和模拟器,杀死了adb进程,但是这些没有用。
From the AVD Manager try the "Cold Boot Now" option in the drop-down. It worked for me!
| 归档时间: |
|
| 查看次数: |
140564 次 |
| 最近记录: |