Android 模拟器不会在 Ubuntu 17.04 上启动
Android emulator won't launch on Ubuntu 17.04
我已经下载了 Android Studio 2.3.3,目前,我正在尝试 运行 自动生成的基本 Hello World activity。当我尝试启动模拟器时,它没有启动。
这是已知错误还是配置错误?我也很惊讶 Linux.
只有 2.3.3 版
模拟器附带一个捆绑的 libstdc++.so 文件。在某些情况下,捆绑文件与您的系统不兼容。使用系统中可用的 libstdc++.so.6 而不是与 Android SDK 捆绑的那个可能会解决这个问题。
要使用系统的 libstdc++.so 文件,请编辑位于您的主文件夹中的 .profile 文件,并将其附加到文件末尾:
export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
来自 Android Studio Environment Variables reference 的文档:
Contains a value of 0 (default) or 1. A value of 1 means to use the system's libstdc++.so file instead of the one that comes bundled with the emulator. Set this environment variable only when the emulator does not start on your Linux system because of a system library problem. For example, some Linux Radeon GL driver libraries require a more recent libstdc++.so file.
Note:
There is no guarantee that setting this environment variable to 1 will make the emulator runnable. It is a work-around for system library issues that affect a very small number of Linux users.
选项 -gpu swiftshader_indirect 对我的情况有帮助。启动模拟器的完整命令
/android_sdk/tools/emulator @NEXUS_API_27 -verbose -no-boot-anim -gpu swiftshader_indirect
其中 NEXUS_API_27 虚拟设备的名称。你可以在这里得到它:
/android_sdk/tools/bin/avdmanager list avd
我已经下载了 Android Studio 2.3.3,目前,我正在尝试 运行 自动生成的基本 Hello World activity。当我尝试启动模拟器时,它没有启动。
这是已知错误还是配置错误?我也很惊讶 Linux.
只有 2.3.3 版模拟器附带一个捆绑的 libstdc++.so 文件。在某些情况下,捆绑文件与您的系统不兼容。使用系统中可用的 libstdc++.so.6 而不是与 Android SDK 捆绑的那个可能会解决这个问题。
要使用系统的 libstdc++.so 文件,请编辑位于您的主文件夹中的 .profile 文件,并将其附加到文件末尾:
export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
来自 Android Studio Environment Variables reference 的文档:
Contains a value of 0 (default) or 1. A value of 1 means to use the system's libstdc++.so file instead of the one that comes bundled with the emulator. Set this environment variable only when the emulator does not start on your Linux system because of a system library problem. For example, some Linux Radeon GL driver libraries require a more recent libstdc++.so file.
Note:
There is no guarantee that setting this environment variable to 1 will make the emulator runnable. It is a work-around for system library issues that affect a very small number of Linux users.
选项 -gpu swiftshader_indirect 对我的情况有帮助。启动模拟器的完整命令
/android_sdk/tools/emulator @NEXUS_API_27 -verbose -no-boot-anim -gpu swiftshader_indirect
其中 NEXUS_API_27 虚拟设备的名称。你可以在这里得到它:
/android_sdk/tools/bin/avdmanager list avd