等待设备时出错:等待仿真器上线300秒后超时

时间:2016-04-17 11:01:29

标签: android-studio android-emulator

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

Hax已启用

  • Hax ram_size 0x800000000

  • HAx正在运行和模拟器

  • 以快速virt模式运行。

  • 端口5554上的控制台,

  • 端口5555上的ADB

之后需要下一个TAB启动应用程序并显示 等待设备上线 之后它显示错误: 等待设备时出错:等待仿真器上线300秒后超时。

到目前为止我尝试了什么。

  • 安装了全新的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

21 个答案:

答案 0 :(得分:58)

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

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

答案 1 :(得分:17)

您可能已在adb上启用转发功能。你可以尝试这个:退出Android工作室和发射终端。运行以下命令:

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

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

答案 2 :(得分:8)

我发现了一种解决方法,即使我不确定为什么会这样。

转到 var addListenersOnMarker = function(marker, map, position ) { google.maps.event.addListener(marker, 'click', function (event) { map.setZoom(15); map.setCenter(position); }); }; function zoomOnMarker(markers, map) { position = new Array(0) for (var i = 0; i < markers.length; i++) { position.push(markers[i].getPosition()); addListenersOnMarker(marker[i] map, position[i] ); } } 并取消选中Menu->Tools->Android选项 运行该应用程序。现在模拟器将启动,但应用程序将无法运行。模拟器完全启动后,请检查Enable ADB Integration选项并重新运行该应用。现在,该应用程序将在已经运行的模拟器中启动。

答案 3 :(得分:8)

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

答案 4 :(得分:4)

你可以尝试:

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

答案 5 :(得分:4)

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

  • __> ls
  • __> rm -r Nexus_5X_Edited_API_17.avd
  • {{1}}有两个avd文件。

重新运行该应用。

答案 6 :(得分:3)

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

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

答案 7 :(得分:1)

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

  • 使用512MB RAM
  • 256MB堆

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

答案 8 :(得分:1)

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

答案 9 :(得分:1)

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

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

首先,正如@ jlars62建议的那样,我尝试使用将图形切换为“软件”并且这个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

答案 10 :(得分:0)

通常,删除不再工作并再次创建它的当前模拟器将解决此问题。我在5分钟前得到了它,这就是我如何解决它的。

答案 11 :(得分:0)

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

取消选中Enable ADB Integration选项并将其检回似乎为我解决了这个问题。我希望这可以帮助那些人。

答案 12 :(得分:0)

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

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

答案 13 :(得分:0)

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

答案 14 :(得分:0)

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

enter image description here

答案 15 :(得分:0)

可悲的是,没有一个解决方案对我有用!我通过从手机上卸载现有的APK解决了我的问题,一切都开始正常运行!

这是在我将android studio更新到最新版本之后开始的。

答案 16 :(得分:0)

我已经遇到了这个问题,我通过删除模拟器来解决此问题,然后创建了一个具有更高API级别的新模拟器。

就我而言,我已经创建了API-30

答案 17 :(得分:0)

尝试更改此方法解决了我的问题,您可以使用其他图形选项,并更改为较低分辨率的模型 enter image description here

答案 18 :(得分:-1)

删除AVD并创建一个新错误后,此错误消失了。

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

答案 19 :(得分:-1)

为了修复它,我转到了工具 > SDK 管理器 > SDK 工具并更新了 Android SDK Build-Tools 31

答案 20 :(得分:-2)

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