我认为 Gerd 的解决方案是最有帮助的。
万一有人偶然发现了这个,一个更详细和完整的解决方案......
vanilla studio.sh starter-shell 脚本设置了一个环境变量:
LD_LIBRARY_PATH="$IDE_BIN_HOME:$LD_LIBRARY_PATH"
然后出口。IDE_BIN_HOME 是通过使用 studio.sh 文件的位置来设置的(在中间的某个地方 - 通常是 [android-studio]/bin)。当通过 Studio->Manger->Tools->Manage AVDs 启动模拟器时,此 env-var 以 android-SDK/tools/bin 为前缀。这意味着当您独立启动它时,您没有设置该环境变量。Gerd 的解决方案将 lib 添加到系统 lib-search-path 中。另一种方法是创建一个处理此问题的包装器,以便仅在需要时设置它并且(可能)还设置其他东西。
#!/bin/bash
export JAVA_HOME="/usr/lib/jvm/java-BLAH"
export STUDIO_JDK="$JAVA_HOME" #This is also used in studio.sh
export IDE_BIN_HOME="/home/you/android-studio/bin"
export Anroid_SDK="/home/you/android-sdk"
export LD_LIBRARY_PATH="$Anroid_SDK/tools/lib:$IDE_BIN_HOME:$LD_LIBRARY_PATH"
cd "$Anroid_SDK/tools"
./emulator64-x86 -avd AVD-NAME-1 -gpu on &
./emulator64-arm -avd AVD-NAME-2
这可能有点过头了,但它是完整的;)根据发行版/设置,可能会预设 JAVA_HOME,因此您可以删除该行。如果您经常使用模拟器,您还可以添加类似
export LD_LIBRARY_PATH="[YOUR Studio PATH]/tools/lib:$LD_LIBRARY_PATH"
到您的 .bashrc 或 .profile 文件。
但是要回答实际问题:这意味着模拟器无法运行(硬件加速?)OpenGLES,并且它正在使用软件例程来实现/模拟 OpenGLES:D 要使模拟器能够找到所需的库,请确保您安装了正确的(3D-Accel.?)显卡驱动程序,然后选择上述之一(包装器外壳或(bash-)session-init 设置)。
请注意,较新版本的 Android-Studio 已分叉出 SDK