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

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

Hax已启用

  • Hax ram_size 0x800000000

  • HAx正在工作和模拟器

  • 以快速虚拟模式运行。

  • 控制台端口5554,

  • 亚行港口5555

之后,它需要到下一个TAB启动应用程序,并显示等待设备来联机之后,它显示错误:等待设备时出错:等待模拟器上线300秒后超时。

我到目前为止所尝试过的。

  • 安装新鲜的android studio 2.0与所有更新迄今SDK
  • 厌倦增加模拟器内存​​。
  • 安装了Android Studio 2.1 Beta和最新的SDK
  • 在Google上讨论这个问题。

任何人都知道解决scheme

提前致谢。

编辑

我还没有find任何解决scheme。 我在2016年5月4日开了新的问题,因为它是以前版本中的已知错误。 如果你有同样的问题,请报告下面的链接。

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

我的解决scheme是将Android虚拟设备上的graphics选项设置为Software而不是AutomaticHardware

我相信这是解决scheme,因为我正在一个没有专用graphics卡的Windows机器上工作。

您可能在adb上启用转发。 你可以试试这个:退出Android工作室和发射terminal。 运行这些命令:

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

现在您可以启动Android Studio,然后重试。

还有一些可能会出错的地方:确保你退出Mac版的Docker(也可能是所有其他types的docker安装)。

我发现一个解决方法,即使我不知道为什么会发生这种情况。

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

你可以尝试:

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

转到Android Studio命令行,并按照下列步骤操作:

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

重新运行应用程序。

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

有一件事我知道,Linux KVM无法很好地与VirtualBox相处。

升级到最新的SDK,为Android模拟器:

  • 使用512MB RAM
  • 256MB堆

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

我有同样的问题。 我正在使用Android Studio 2.3和Debian 9.1 Stretch 64位。 在我的情况下,问题是在graphicsacelerationconfiguration中build立的默认设置。 为了解决这个问题,我打开了AVDpipe理器,然后select了设备,我打开了configuration文件(config.ini),select了“在磁盘上显示”选项。 在文件中,我将hw.gpu.modevariables中设置的值从mesa更改为swiftshader。 保存更改后,模拟器启动没有任何问题。 更多的选项可以在这个链接find。

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

  • 切换到软件渲染(工作,但速度太慢)
  • 尝试在commanline上运行,并显示一个错误。
  • 强制模拟器使用系统graphics驱动程序。

首先,正如@ jlars62所build议的那样,我尝试了将graphics切换到“软件”,并使用此DID。 不过,performance还是很慢,所以我挖得更深一点。

然后我尝试从控制台运行设备,如@CaptainCrunchbuild议。 (我的设备是在Android Studio中创build的; Sdk中的模拟器可能位于系统中的不同位置)

 $ ~/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 ... 

我跟踪( 在ArchLinux )意味着它使用了错误的graphics驱动程序(Android Sdk自带)。 您可以使用-use-system-libs命令在命令行上强制执行系统命令:

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

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

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

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

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

通常情况下,删除当前不工作的仿真器并重新创build它将解决问题。 我已经有了5分钟前,这就是我解决它的方法。

我遇到了与Android工作室2.2类似的问题。 重新安装一个新的系统映像没有为我解决。 然后在此链接上find此解决scheme。

取消选中“ Enable ADB Integration选项并检查回来似乎为我解决它。 我希望这可以帮助那里的人。

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

同样低版本(例如API 15)导致ide-emulator链接失败,尽pipe应用程序和设备版本匹配。

通过删除AVD并创build一个新的错误消失了。

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

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