我试图通过使用AVD管理器运行一个Android模拟器。 这是我的avd: http://image-upload.de/image/fnx79V/52b0d050ee.png

这就是开始时的情况:

http://image-upload.de/image/vGpQfa/e912d83939.png

我有一台Macbook Pro Retina。直接从intel页面安装Haxm驱动程序。

没有模拟器在工作。都得到相同的“错误”消息。

运行命令(此错误是当我使用Homebrew安装Android-sdk和Android-platform-tools |时,任何得到相同问题的人都应该删除此或查看冲突的位置)

export ANDROID_EMULATOR_DEBUG=1 test20

emulator:Found AVD name 'test20'
emulator:Found AVD target architecture: x86
emulator:Looking for emulator-x86 to emulate 'x86' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
emulator:Found target-specific emulator binary: /usr/local/bin/emulator-x86
emulator:Probing for: /usr/local/bin/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/lib/libOpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/bin/lib/lib64OpenglRender.dylib
emulator:Probing for: /usr/local/lib/lib64OpenglRender.dylib
emulator:Could not find OpenGLES emulation host libraries!
emulator: ERROR: This AVD's configuration is missing a kernel file!!

emulator -avd test21
emulator:Found AVD name 'test21'
emulator:Found AVD target architecture: x86_64
emulator:Looking for emulator backend for x86_64 CPU
emulator:Probing program: ./emulator-x86_64
emulator:Probing path for: emulator-x86_64
emulator:Looking for emulator-x86 to emulate 'x86_64' CPU
emulator:Probing program: ./emulator-x86
emulator:Probing path for: emulator-x86
PANIC: Missing emulator engine program for 'x86_64' CPUS.

在我解决了Homebrew的问题后:

我试了一下,发现了这个:

emulator64-x86 -avd test20
Creating filesystem with parameters:
    Size: 69206016
    Block size: 4096
    Blocks per group: 32768
    Inodes per group: 4224
    Inode size: 256
    Journal blocks: 1024
    Label: 
    Blocks: 16896
    Block groups: 1
    Reserved block group size: 7
Created filesystem with 11/4224 inodes and 1302/16896 blocks
emulator: ERROR: Could not load OpenGLES emulation library: dlopen(lib64OpenglRender.dylib, 1): image not found
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
HAX is working and emulator runs in fast virt mode
qemu: could not load PC BIOS 'bios.bin'

对于所有有同样问题的人来说,这些步骤可能会有所帮助:

在调试模式下运行模拟器:

export ANDROID_EMULATOR_DEBUG=1 emulatorName

如果有一个路径看起来奇怪,检查其他安装,如Homebrew,并删除冲突(卸载一个)

当库丢失时,你需要导出变量:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ANDROID_HOME/tools/lib

当错误“qemu: could not load PC BIOS ' BIOS .bin'”出现时,一个修复方法是使用完整路径运行模拟器:

/Applications/Android\ Studio.app/sdk/tools/emulator64-x86 -avd test20
In your case it is maybe a other path.

当前回答

在WINDOWS上——更新系统路径对我来说很有用。为sdk的位置创建一个环境变量ANDROID_SDK,然后将它们添加到你的路径中,顺序如下:

%ANDROID_SDK%\emulator
%ANDROID_SDK%\platform-tools
%ANDROID_SDK%\tools
%ANDROID_SDK%\tools\bin

其他回答

查看您的.exe文件是否在防病毒隔离中

解决方案:

再次从https://developer.android.com/tools/sdk下载adt-bundle。 打开Zip文件。 从\sdk\tools文件夹中复制丢失的.exe文件。 绕过Android\sdk\tools目录中的复制文件。

这个问题源于SDK的变化,因为模拟器现在有自己的目录。 我没有注意到(也不在乎)运行一个过时的模拟器,尽管它仍然可以工作… 这是一个停滞的SDK迁移。使用-verbose开关运行时:

emulator -avd Nexus_6_API_R -verbose

人们可以看到它开始恐慌的地方:

emulator:try dir C:\Android\tools
emulator:Looking for emulator-x86 to emulate 'x86' CPU
emulator:Probing program: C:\Android\tools/emulator-x86.exe
PANIC: Missing emulator engine program for 'x86' CPU.

但是没有可用的模拟器-x86.exe,实际的模拟器驻留在目录emulator中。在卸载“SDK Tools”(同时尝试重新安装它们)后,该条目意外地从列表中消失,留下一个空的工具目录,可以从PATH中删除和删除。

不需要也不建议使用x86_64仿真(因为这将运行已停止的仿真器版本)。通过卸载“SDK工具”来适应SDK路径的变化是“答案”。人们可能只是用PATH上的模拟器替换工具,但这留下了混乱。


作为比较,30.3.5.0版本的实际启动顺序应该是这样的:

emulator: Android emulator version 30.3.5.0 (build_id 7033400) (CL:N/A)
emulator: Found AVD name 'Nexus_6_API_R'
emulator: Found AVD target architecture: arm
emulator: argv[0]: 'emulator.exe'; program directory: 'C:\Android\emulator'

如果后续可能出现类似的错误:

PANIC: Broken AVD system path. Check your ANDROID_SDK_ROOT value

这意味着*.ini文件中的系统映像路径可能是错误的。它有助于下载x86系统映像,然后创建一个新的模拟器。

删除Android SDK Tools和Android SDK PLatform-tools;然后重新下载这两个包。现在,创建一个新的模拟器并启动它;它会起作用的。您可以运行旧的模拟器。

在Windows7 64bit上也有同样的问题。它没有的原因是sdk/tools下缺少模拟器-x86.exe文件。通过使用Android SDK管理器删除Android SDK工具并重新安装来修复。该文件现在存在,模拟器按预期工作。

在Mac上安装Android Studio IDE后Android - Studio - IDE -173.4907809。使用studio SDK Manager安装SDK Tools

使用~/添加到您的PATH。Profile或~/。在$ANDROID_HOME/tools之前的$PATH中设置$ANDROID_HOME/emulator,如下所示:

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

alias androidemulator='emulator -avd Nexus_5X_API_28_x86'