我已经下载了 Android Studio 2.3.3,目前,我正在尝试运行自动生成的基本 Hello World 活动。当我尝试启动模拟器时,它不会启动。
这是一个已知的错误还是只是错误的配置?我也很惊讶只有 2.3.3 版适用于 Linux。
我已经下载了 Android Studio 2.3.3,目前,我正在尝试运行自动生成的基本 Hello World 活动。当我尝试启动模拟器时,它不会启动。
这是一个已知的错误还是只是错误的配置?我也很惊讶只有 2.3.3 版适用于 Linux。
模拟器附带一个捆绑的 libstdc++.so 文件。在某些情况下,捆绑的文件与您的系统不兼容。使用系统中可用的 libstdc++.so.6 而不是与 Android SDK 捆绑的 libstdc++.so.6 可能会解决此问题。
要使用系统的 libstdc++.so 文件,请编辑位于您的主文件夹中的 .profile 文件,并将其附加到文件末尾:
export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
包含值 0(默认值)或 1。值 1 表示使用系统的 libstdc++.so 文件,而不是与模拟器捆绑在一起的文件。仅当模拟器由于系统库问题而无法在您的 Linux 系统上启动时才设置此环境变量。例如,某些 Linux Radeon GL 驱动程序库需要更新的 libstdc++.so 文件。
笔记:
无法保证将此环境变量设置为 1 会使模拟器可以运行。它是一种解决影响极少数 Linux 用户的系统库问题的方法。
选项-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