Android模拟器除黑屏外显示任何内容,adb设备显示“设备离线”

Android emulator shows nothing except black screen and adb devices shows “device offline”

我只是想在Android中开始开发。所以,问题是当我试图通过发出命令emulator@a2来启动模拟器时,屏幕上会出现一个模拟器。但即使等待了2-3个小时,它所显示的也只是一个黑屏。甚至没有Android主屏幕或Android徽标。只是一个黑屏。当最初的"adb设备"显示模拟器离线时,2-3分钟后,连接的设备列表变为空白。

我搜索了所有的网络,并尝试了所有提到的步骤,比如杀戮和重启ADB,在没有空格的目录中安装Java/Android,但无济于事。

我的JDK和Android安装在以下文件夹中:

C:Java32计划安装C:androidsdkinstallation公司以下是我为其下载/安装的资料列表:

  • Android SDK工具,第13版
  • Android SDK平台工具,第10版
  • SDK平台Android 4.0.3,API 15,版本1
  • JDK JDK-7U3-Windows-I586型
  • 在我的路径变量中,我添加了*C:androidsdkinstallationandroid sdkplatform tools;C:androidsdkinstallationandroid sdk ools;C:java32bitinstallation;C:java32bitinstallationin*

    另外,在从NET中读取之后,我添加了java_home变量,其值为c:java32bintinstallation,但仍然没有用。

    我的系统上安装了Intellij和Eclipse。但是自从启动模拟器以来,我没有使用任何一个,我不怀疑这些有任何问题。

    所以,有人能帮我处理这些让我发疯的事情吗?在过去的10-12天里,我一直在尝试,但无法启动模拟器,更不用说编写我的第一个"你好世界"程序了。

    附加说明:我的系统是Windows7(64位)计算机。早些时候我安装了64位版本的JDK,但那个时候问题也出现了。现在,在搜索Internet之后,我卸载了它并安装了32位的Java版本。但是,同样没有用。然而,有一点是Java的32位版本(JDK 7更新3),首先将JRE安装为JDK安装的一部分,然后安装JRE 7。所以现在我在c:java32bintinstallation目录中有两个文件夹:jre和jre7。如果我的模拟器不出现的话,这会有什么影响吗?我需要指定其他环境变量还是修改现有的环境变量?请帮助。

    顺便问一句,我有没有提到logcat什么都没有。


    我对最新的Android SDK也有同样的问题。我只是在虚拟设备的设置中取消了复选框"使用主机GPU",它又开始工作了。

    "使用主机GPU"只适用于我的Android 4.2作为"目标"。

    更新日期:2014年2月26日:

    在developer.android.com的"配置图形加速"一章中有两个提示。

    Caution: As of SDK Tools Revision 17, the graphics acceleration feature for the emulator is experimental; be alert for incompatibilities and errors when using this feature.

    Start the AVD Manager and create a new AVD with the Target value of Android 4.0.3 (API Level 15), revision 3 or higher.

    因此,Android 4.0.3(API级别15)似乎是图形加速的最低要求。

    更新日期:2018年7月25日:

    最新的Android Studio版本不再具有此选项。如果问题仍然存在,请尝试在验证配置对话框(如果可用)中的"仿真性能"下拉列表的值之间切换,或参考配置仿真器图形渲染和硬件加速。


    我无法让更大的设备进行模拟(nexus7和10),而手机大小的模拟器工作得很好。只需要在数小时内用平板电脑一直得到一个没有任何东西的黑屏。帮助的实际上与这里大多数人推荐的相反:在为"使用主机GPU"设置勾选框并将目标设置为最高的Android(本文撰写时为4.4.2)之后,7和10按预期工作!


    在启动选项中检查"擦除用户数据"为我修复了它。

    转到Android虚拟设备管理器->选择您的设备->开始->检查"擦除用户数据"->启动


    Mac用户:不幸的是,如果您有一个旧的Mac(例如2009年底),并且正在使用Yosemite,则不能将HAXM用于64位体系结构。根据HAXM的发行说明:

    HAXM driver does not support emulating a 64 bit system image on Intel systems based on Core microarchitecture (Core, Core2 Duo etc.). All systems based on Nehalem and beyond are supported. (Corei3, Core i5 and Core i7 machines).

    我花了一天时间试图找出这个问题,当我找到这个引语。唯一有效的方法是在你的AVD中使用非x86版本的最新操作系统(例如棒棒糖安卓5.0.1 ARMEABI-V7A)。


    我最近在Emulator中也遇到过同样的问题,Nexus5(AndroidO)。我去了android虚拟设备管理器,删除了用户数据,解决了我的问题。

    Android Virtual Device Manager


    在"Android设备管理器"中进行工厂重置。

    在较新版本的Android Studio中,这称为"擦除数据",位于虚拟设备管理器中设备的右键单击菜单中。


    我就是这样解决的:我用以下命令运行模拟器:

    1
    sudo /home/code/Android/Sdk/tools/emulator -avd Nexus_S_API_21 -netspeed full -netdelay none -debug-init -logcat '*:v'

    并在输出中接收到以下内容:

    1
    NAND: could not write file /tmp/android-code/TMP7.tmp, No space left on device. (similar error, could not reproduce it)

    所以,我刚从Ubuntu中的/home目录释放了一些磁盘空间(对于Windows,释放了c:驱动器空间),然后它就顺利启动了。


    确保安装了最新的haxm版本。我在1.0.1版本中遇到了同样的空白屏幕问题,而1.0.8版本已经可用。安装程序可以通过sdk工具下载,以实际安装您必须执行的模块。

    android-sdk-directory\extras\intel\Hardware_Accelerated_Execution_Manager\intelhaxm.exe


    通过它的声音,你有一个配置错误的设备。如果你这样做,它将永远不会开始,也不会在logcat中显示任何内容。

    我建议使用AVD管理器中提供的默认"设备定义"创建一个新设备。这就像在"设备定义"选项卡中突出显示所需的设备类型,然后单击"创建AVD…"按钮,然后填写一些详细信息一样简单。我先把"内部存储"调整到8GB左右,然后(可能)调整到2GB的"SD卡",而其他的一切都保持不变。尝试启动设备,如果在运行的屏幕上看到"android"弹出。第一次引导通常需要一段时间,所以只要挂起并观察logcat是否有任何问题(这里的"ddms"透视图有帮助)。

    如果您仍然看到一个带有默认设备定义的黑屏,则在其他地方会出现导致设备故障的问题。如果是这样的话,挖掘原木可能是你唯一的机会。你可以尝试重新下载ADT和重新安装SDK,如果没有其他工作。

    这里的目标是让你用一个(非常)基本的设备来启动和运行,所以不要在这一点上为超级令人印象深刻的规格而拍摄,只是为了让它运行而拍摄。一旦发生这种情况,试着一个一个地调整设置,直到你有它的规格出你喜欢的方式。请记住,仿真器有其局限性,不能替代真正的设备(尽管大多数时候它都能工作;)


    如果在创建AVD时选择了"使用主机GPU"选项,则这是一个已知的错误。https://code.google.com/p/android/issues/detail?ID=28614取消选中该选项,它应该可以工作!


    只需尝试在"Intel Atom(x86)"上设置CPU/ABI,然后取消激活复选框"使用主机GPU"。


    我把它改成"冷启动"来解决我的问题。在此之前,当我运行adb devices时,它总是显示为offline

    Cold boot screenshot


    与仿真器黑窗口相关的问题:

    在安装新窗口时发生。与Windows图形相关的问题在Windows的CD上。您必须更新Windows并执行以下步骤。

    如果模拟的性能图形为(软件GLE,则选择它为->自动)

    或如果模拟的性能图形是(自动的,则选择它以-->软件gles)

    这种交替可以解决这个问题。


    我在API 28上也遇到了同样的问题,解决方法如下:

    为Android用户界面启用Skia渲染

    当使用api27或更高版本的图像时,仿真器可以使用skia呈现Android用户界面,这样可以更平滑、更高效地呈现。

    要启用skia渲染,请使用adb shell中的以下命令:

    1
    2
    3
    4
    su
    setprop debug.hwui.renderer skiagl
    stop
    start

    https://developer.android.com/studio/run/emulator加速加速图形


    我已经通过Delphi在Android模拟器上启动和调试了一个Android测试应用程序。

    我有Windows7 64位,4GB内存,3GHz和DelphiXe5双核处理器。

    以下是我为同事们在工作中准备的一个链接,但我会在第一次机会时让它变得更好:

    使用Delphi调试Android应用程序

    原谅我的英语,但我不是英语母语者。希望你能找到这个小教程


    要获得解决方案,请尝试使用带有Intel Atom(x86)映像的Android 4.0.3(API 15)。我可以在启用"使用主机GPU"和HAXM的情况下捕获DDMS屏幕截图。只有这种组合对我有效。


    对我来说,我必须关掉前后摄像头。希望这有帮助!


    我也有同样的问题。我发现haxm硬件加速器最近更新了,但没有重新安装,因为更新管理器只更新了保存到硬盘上的安装程序包。您需要删除haxm,然后运行安装程序包来完成更新。通常这会安装到android-sdk-rootandroid sdkextrasintelhardwareu-acceleratedu-executionu manager中。其中android-sdk-root是您的android sdk所在的位置。


    我也有同样的问题。当我将Eclipse从EE更改为Eclipse Classic时,它工作得很好。在Win专业版64位。试试看,它也可能对你有用。


    我也有同样的问题。这是我的解决方案(针对Mac OS)。我只是把Android模拟器的版本从28.0.3降到了27.3.8。下面是一个详细的说明如何做到这一点。


    以下修复程序对我有效:

  • ~/.android/avd中找到avd文件夹。
  • 打开config.ini
  • 用这些值替换以下设置:

    1
    2
    hw.gpu.enabled=yes
    hw.gpu.mode=on
  • 保存并关闭文件
  • 不要在Android Studio中打开AVD设置屏幕,否则将恢复上述设置。
  • 启动模拟器
  • 感谢太阳公园提供的修复。

    我已经在黑屏上向谷歌报告了这一点,从API 15开始。请在问题上加上星号,让他们解决。

    编辑

    实际上,当模拟器启动正常时,它在打开应用程序后崩溃了。因此,仿真器团队必须出于某种原因禁用硬件图形。不幸的是,仿真器似乎不可能工作。


    我使用微软的超V快速Android仿真器,不管我如何设置GPU模式(自动、主机、台面、角度、Swiftshader、关闭),我创建的每个Android仿真器都有相同的黑屏。虽然我的情况与OP明显不同,但我认为它可能对那些使用微软安卓仿真器并在搜索"安卓仿真器黑屏"后来到这里的用户有用。

    我的解决方案是更新所有Android工具:

    1
       Visual Studio > Tools > Android > Android SDK Manager > Tools

    到目前为止(2019-02-01),如果您重新安装了Visual Studio 2017,Android模拟器将出现这种黑屏问题。vs会自动显示nuget包、扩展工具等更新的通知,但不会显示Android工具更新的通知。您必须手动检查和更新它们。


    另一个错误来源可能是(在Windows系统上)PATH系统变量的长度。运行带有超过2047个字符的PATH变量的基于Intel的映像,似乎会将该变量的空值传递给控制台/模拟器,因此无法正确启动。

    以下是一篇描述这种行为的文章:https://software.intel.com/en-us/articles/limitation-to-the-length-of-the-system-path-variable

    我也有同样的问题。通过删除未使用/不存在的路径,将此系统变量的总长度减少到1354个字符,从而为我修复了它。


    在运行模拟器时,我看到死亡的蓝屏后,我遇到了这个问题。这是我的解决方案(至少对于Windows)。我的解决方案是完全重新安装AVD。Android Studio的正常卸载过程的问题是,它不会删除所有内容,因此如果您的AVD文件已损坏,重新安装时它们将保持损坏状态。

    为了解决这个问题,我删除了两个目录:

    C:\Users\(My Username)\.Android

    C:\Users\(My Username)\.AndroidStudio3.1

    然后我重新运行安装程序。

    如果你的模拟器以前工作过,我认为这是最简单的解决方案,因为它强制完全刷新android studio的avd组件。


    你试过电源按钮了吗:)…这对我真的很管用。实际上,Emulator在关闭之前会保存设备状态,因此在上次运行时,如果关闭设备并关闭Emulator,那么在下次运行时,它将加载上一个状态并显示关闭的电话,即空白屏幕。尽管这一问题可能还有许多其他原因。

    enter image description here


    我的Mac上有这个问题。当你创建这个设备时,如果你把"图形"从"自动"改为"软件",它会解决这个问题,或者至少对我来说是这样。