等待设备时出错:等待模拟器上线 300 秒后超时

Posted

技术标签:

【中文标题】等待设备时出错:等待模拟器上线 300 秒后超时【英文标题】:Error while waiting for device: Time out after 300seconds waiting for emulator to come online 【发布时间】:2016-08-09 02:37:23 【问题描述】:

我一直在尝试使用 android studio 2.0 模拟器,但我无法在模拟器上运行我的应用程序。当我运行我的应用程序时,它会显示具有以下详细信息的模拟器:

Hax 已启用

Hax ram_size 0x800000000

HAx 正在运行并且是模拟器

以快速 virt 模式运行。

5554 端口上的控制台,

5555 端口上的 ADB

之后它会进入下一个 TAB Launching 应用程序并显示 等待设备上线 之后它显示错误: 。

到目前为止我已经尝试过。

安装了全新的 android studio 2.0,所有更新到最新的 SDK 累了增加模拟器内存​​。 安装了带有最新 SDK 的 android studio 2.1 Beta 在 Google 上讨论过这个问题。

任何人都知道任何解决方案。

提前致谢。

编辑

我还没有找到任何解决方案。我在 2016 年 5 月 4 日打开了新问题,因为它是以前版本中的已知错误。如果您有同样的问题,请通过以下链接报告。

https://code.google.com/p/android/issues/detail?id=209095

【问题讨论】:

应用程序和设备的 Android API 版本应该匹配。检查 Gradle Scripts - build.gradle (Module: app) 中的 minSdkVersion 和 targetSdkVersion 是否对应设备 API。即使应用程序和设备版本匹配,低版本(例如 API 15)也会导致 ide-emulator 链接失败。 试试这里提供的解决方案:***.com/a/42805346/5925104 我不得不去 Android SDK 管理器并更新模拟器软件。这为我解决了问题。 这听起来可能很荒谬,但在尝试了许多 SO 解决方案数小时后,对我有用的是完全删除 Android Studio 并在不导入任何设置的情况下重新安装。见***.com/a/18458893/1159930 【参考方案1】:

我的解决方案是将 Android 虚拟设备上的图形选项设置为 Software 而不是 AutomaticHardware

我相信这是解决方案,因为我正在使用没有专用显卡的 Windows 机器。

【讨论】:

这对我来说是不可能的。我找到了图形选项,但我无法编辑它:( @Andre 在添加之前克隆您的设备。然后您就可以对其进行编辑了。 太棒了,非常感谢 @andre 它适用于我在旧图像上编辑它,例如 5.1.1 但不适用于 7.0。 这里仍然没有运气。 macOS :(【参考方案2】:

您可能在 adb 上启用了转发。你可以试试这个:退出 Android 工作室并启动终端。运行这些命令:

adb kill-server
adb forward --remove-all
adb start-server 

现在您可以启动 Android Studio 并重试。

【讨论】:

得到:adb 服务器已过期。杀死...无法绑定'tcp:5037' ADB 服务器没有确认 * 无法启动守护进程 *【参考方案3】:

还有一些可能出错的地方:确保退出 Docker for Mac(可能还有所有其他类型的 docker 安装)。

【讨论】:

太棒了,感谢马里奥——当我读到这篇文章的那一刻,我就知道这就是答案。刚刚为我节省了卸载/重新安装所有东西的时间;) 天哪,你刚刚救了我。谢谢! :) 哇。我从没想过是 Docker 造成了这种情况。这对我有用。谢谢。任何想法为什么运行 docker 是一个问题? 我该怎么做?【参考方案4】:

尽管我不确定为什么会发生这种情况,但我找到了解决方法。

转到Menu->Tools->Android 并取消选中选项Enable ADB Integration 运行应用程序。现在模拟器将启动,但应用程序不会运行。模拟器完全启动后,检查Enable ADB Integration 选项并重新运行应用程序。现在应用程序将在已经运行的模拟器中启动。

【讨论】:

它抛出错误“10:23:39 运行应用程序时出错:Instant Run 需要启用“工具 | Android | 启用 ADB 集成”。”【参考方案5】:

在我关闭机器上的 VirtualBox 后,我的问题就消失了。

我知道的一件事是 Linux KVM 不能很好地与 VirtualBox 相处。

【讨论】:

这也是我的问题的原因。 嘿,在我的情况下,这也是 virtualbox 引起的问题。停止virtualbox后,一切顺利,谢谢!【参考方案6】:

转到 Android Studio 命令行,然后按照以下步骤操作:

__> cd /Users/your_root_name/.android/avd __> ls __> rm -r Nexus_5X_Edited_API_17.avd有两个avd文件。

重新运行应用程序。

【讨论】:

只看到一个,还有一个 .ini 的?【参考方案7】:

你可以试试:

从控制台手动运行模拟器,看看 adb 是否可以从 android studio 连接(“see”)它。它会运行吗? 删除 avd ,重新创建一个新的进行测试,在 2.0 中总是一个好主意。很多东西正在改变(即时运行等) adb 从控制台说什么? adb kill-serveradb start-server,启动模拟器,然后adb devices会列出你的模拟器吗?

【讨论】:

另外,您可以保留 ADVANCED SETTINGS 默认(在创建 AVD 时)。 如果adb 在控制台/终端中不存在怎么办? @StephanBijzitter 这意味着您的环境尚未完全设置。 ADB 随 Android SDK 一起提供。如果您使用的是 Linux 系统,则必须将 SDK 文件夹添加到您的 $PATH 变量中。这篇文章developer.android.com/studio/command-line/adb.html 描述了 ADB 的完整路径是“android-sdks/platform-tools/adb”如果你只是使用 Android Studio,这是在它的 GUI 中完成的【参考方案8】:

尝试更改此解决了我的问题,您可以选择其他图形选项,并更改为较低分辨率的模型

【讨论】:

【参考方案9】:

升级到最新的 SDK,适用于 android 模拟器:

使用 512MB 内存 256MB 堆

您可以保留默认磁盘空间。

【讨论】:

【参考方案10】:

我遇到了同样的问题。我正在使用 Android Studio 2.3 和 Debian 9.1 Stretch 64 位。 就我而言,问题出在图形加速配置中建立的默认设置中。 为了解决这个问题,我打开了 AVD 管理器,然后我选择了设备并打开了配置文件 (config.ini),在“操作”列中选择“在磁盘上显示”选项。在文件中,我将 hw.gpu.mode 变量中设置的值从 mesa 更改为 swiftshader。保存更改后,模拟器启动没有任何问题。 更多可用选项请访问this link。

【讨论】:

【参考方案11】:

这些是我采取的步骤(我在 Linux 上)。

切换到软件渲染(工作但太慢) 尝试在命令行上运行并显示错误。 强制模拟器使用系统图形驱动程序。

首先,正如@jlars62 建议的那样,我尝试使用 Switching the Graphics to "Software" 并且这个 DID 工作。但是,性能远没有那么慢,所以我挖得更深了。

然后按照@CaptainCrunch 的建议,我尝试从控制台运行该设备。 (我的设备是在 Android Studio 中创建的;SDK 中的emulator 可能在您系统的不同位置)

$ ~/Android/Sdk/emulator/emulator -avd Nexus_6_Edited_768Mb_API_23

对我来说,这产生了以下错误:

libGL error: unable to load driver: i965_dri.so 
libGL error: driver
pointer missing libGL error: failed to load driver: i965 
...

我发现 (on ArchLinux) 表示它使用了错误的图形驱动程序(Android Sdk 自带)。您可以使用 -use-system-libs 在命令行上强制使用系统:

$ ~/Android/Sdk/emulator/emulator -avd Nexus_6_Edited_768Mb_API_23 -use-system-libs

要强制 Android Studio 执行此操作,您可以像这样 (See Mike42) 拦截对“模拟器”的调用:

$ cd ~/Android/Sdk/tools/
$ mv emulator emulator.0
$ touch emulator
$ chmod +x emulator

在新的模拟器文件中添加:

#!/bin/sh
set -ex
$0.0 $@ -use-system-libs

【讨论】:

【参考方案12】:

通常,删除不再工作的当前模拟器并重新创建它可以解决问题。我在 5 分钟前就遇到过,我就是这样解决的。

【讨论】:

这个答案已经发布。如果您有不同的解决方案,请提供。【参考方案13】:

我在使用 android studio 2.2 时遇到了类似的问题。重新安装新的系统映像并没有解决我的问题。然后在这个link上找到了这个解决方案。

取消选中Enable ADB Integration 选项并重新检查似乎可以为我解决问题。我希望这对那里的人有所帮助。

【讨论】:

这个答案之前已经发布过。如果您有不同的解决方案,请提供。【参考方案14】:

应用程序和设备的 Android API 版本应匹配。检查Gradle Scripts - build.gradle (Module: app)中的minSdkVersiontargetSdkVersion是否对应设备API。

即使应用程序和设备版本匹配,低版本(例如 API 15)也会导致 ide-emulator 链接失败。

【讨论】:

【参考方案15】:

我遇到了同样的问题。我删除了虚拟设备并在手机上运行应用程序 - 运行良好。 要删除虚拟设备:在 Android Studio 中单击图标“AVD Manager”,选择虚拟设备,然后在上下文菜单中单击“删除”。 然后打开手机“开发者模式”。通过 USB 将手机连接到笔记本电脑。

【讨论】:

【参考方案16】:

重新启动 ADB 服务器对我有用,但无需从命令行进行。Ctrl + Maj + A -> Troubleshoot Device Connections -> Next -> Next -> Restart ADB Server

【讨论】:

【参考方案17】:

遗憾的是,没有一个解决方案对我有用!我通过从手机中卸载现有 APK 解决了我的问题,一切都开始完美运行!

这在我将 android studio 更新到最新版本后开始发生。

【讨论】:

【参考方案18】:

我几乎测试了本主题和其他页面中的所有解决方案。经过大量搜索,我终于找到了问题!

我必须在我的系统上启用 Hyper-V(如果您的系统不支持 Hyper-V,则需要安装 HAXM)。

在此链接中,您可以阅读有关启用 Hyper-V 和 HAXM 的信息:https://docs.microsoft.com/en-us/xamarin/android/get-started/installation/android-emulator/hardware-acceleration?pivots=windows

【讨论】:

【参考方案19】:

如果您安装了 HAXM 但仍然无法正常工作,请转到下面的此链接并安装 Hyper-V。 接下来,重新启动计算机。 如果它再次不起作用,请删除模拟器并使用高 API 重新安装。

https://docs.microsoft.com/en-us/xamarin/android/get-started/installation/android-emulator/hardware-acceleration?pivots=windows

【讨论】:

【参考方案20】:

我遇到了类似的问题,我通过删除 Android 模拟器来修复它,然后创建一个具有更高 API 级别的新模拟器。

就我而言,我选择了 API-30

【讨论】:

【参考方案21】:

我遇到了你提到的同样的问题,可以通过删除当前的 avd 并创建一个新的来解决它。它现在工作得很好。

【讨论】:

【参考方案22】:

为了解决这个问题,我去了 Tools > SDK Manager > SDK Tools 并更新了 Android SDK Build-Tools 31

【讨论】:

【参考方案23】:

删除 AVD 并创建一个新的,这个错误就消失了。

经过一些编译和清理后,错误消失了。

【讨论】:

这个答案已经发布。如果您有不同的解决方案,请提供。

以上是关于等待设备时出错:等待模拟器上线 300 秒后超时的主要内容,如果未能解决你的问题,请参考以下文章

模拟器无法启动:等待设备时出错

错误超时等待量角器在 11 秒后与页面同步

AFNetworking - 等待 60 秒后超时间隔与预期不同

大华监控出现了等待登录返回超时

量角器:失败:超时等待异步角度任务在11秒后完成

无法启动进程启动失败:等待应用启动超时