Android 模拟器 (AVD) 在 Wayland + NVIDIA (GBM) 上崩溃

Android emulator (AVD) crashes on Wayland + NVIDIA (GBM)

更新: NVIDIA驱动版本510不再出现该问题。

我是 运行 Android Studio 2020.3.1 on Wayland 并且我使用的是专有 NVIDIA 驱动程序版本 495,这让我可以使用 Wayland 的常规 GBM 实现,而不是 the especially tailored EGL version

我的问题是,每次我尝试通过 AVD 管理器启动 Android 模拟器 (AVD) 时,我都会在几秒钟后收到以下消息:

The emulator process for AVD Pixel_2_API_30 has terminated.

从命令行启动 AVD 显示出现分段错误:

INFO    | Android emulator version 31.1.4.0 (build_id 7920983) (CL:N/A)
WARNING | unexpected system image feature string, emulator might not function correctly, please try updating the emulator.
INFO    | Info: Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. ((null):0, (null))

Fontconfig warning: "/usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs"
WARNING | cannot add library /home/letorbi/Android/Sdk/emulator/qemu/linux-x86_64/lib64/vulkan/libvulkan.so: failed
INFO    | added library /home/letorbi/Android/Sdk/emulator/lib64/vulkan/libvulkan.so
Segmentation fault (core dumped)

如何获取更多信息,是否有防止段错误的解决方法?

尽管如此,Wayland EGL 能够以某种方式启动模拟器,但我在设备上只看到黑屏。 X11 正在运行,但如果可能的话,我想留在 Wayland。

我能够通过禁用 Vulkan 对 AVD 的支持来解决分段错误。这可以通过将以下行添加到文件 ~/.android/advancedFeatures.ini:

来轻松实现
Vulkan = off

我从 an answer in a related question 那里得到了这个提示。此答案还建议添加 GLDirectMem = on,但不需要该行来解决我的问题。但是,一些基准测试显示它可能会稍微提高性能,因此您可能还想添加该行。