Android 模拟器无法连接到 adb 守护进程时冻结我的整个系统

Android emulator freeze my whole system when it can't connect to adb daemon

我最近更换了电脑,并借此机会从 Mageia 迁移到 Fedora。但是我不能再做任何 Android 开发了,因为如标题所述,启动 any AVD 会使整个系统冻结(屏幕、鼠标和键盘),如果AVD 无法连接到 adb 守护进程。我唯一能做的就是硬关机。

这里的问题是当我尝试启动 AVD 时总是启动 adb 守护进程,因为默认情况下该服务是启用的,所以这不应该发生。

到目前为止,我能够通过从 command-line 启动模拟器在文件中收集一些日志。它在冻结之前只说:

emulator: INFO: GrpcServices.cpp:301: Started GRPC server at 127.0.0.1:8554, security: Local
emulator: ERROR: AdbHostServer.cpp:102: Unable to connect to adb daemon on port: 5037

但是,如果我在启动 AVD 之前手动重启 adb 服务,我不会遇到冻结。相反,我在 AVD 崩溃之前收到以下错误:

cannot add library .../android-sdk-linux/emulator/qemu/linux-x86_64/lib64/vulkan/libvulkan.so: failed
added library .../android-sdk-linux/emulator/lib64/vulkan/libvulkan.so
cannot add library .../android-sdk-linux/emulator/lib64/vulkan/libvulkan.so.1: full

我最好的猜测是显卡出了问题。我似乎是唯一一个经历过的人,因为我在互联网上找不到任何相关结果。我必须在这里提到,我已经尝试 运行 多个 API 版本的多个 AVD,软件和硬件渲染图形,我总是得到相同的结果。

我的系统配置是

如果有人偶然发现这个问题,遇到与我相同的问题,则可以通过摆脱 Nouveau 驱动程序并使用 Nvidia 的专有驱动程序来解决。这样做解决了我计算机上的其他一些令人不安的错误。

我真的不明白为什么某些 Linux 发行版仍然强烈建议在 Nvidia 上使用 Nouveau 驱动程序,因为它们对 GPU 的支持非常差...