无法在Linux上启动Android设备模拟器

6

我曾经可以在模拟器上启动和调试Android Studio应用程序,但是最近我一直无法启动模拟器。更新SDK和系统映像并没有解决问题。更新qemu-system-*也没有帮助。

系统信息:Linux Fedora 25(x86_64),Android Studio 2.2.3

8个回答

17

事实证明,导致崩溃的问题是由于Linux上同样老旧的NVidia驱动程序问题所致。要解决这个问题,我从Android Studio中打开了AVD Manager(Tools->Android->AVD Manager),然后打开了虚拟设备设置。然后在仿真性能部分,在Graphics旁边,我选择了Software而不是Automatic或Hardware。这样就可以解决崩溃问题,尽管仿真器似乎比使用默认的Hardware时慢得多。以下屏幕截图将有助于更好地理解解决方案。
enter image description here

enter image description here


2
它能运行,但模拟器变得非常慢,太慢了。我希望 nVidia 能为 Linux 提供优秀的驱动程序。我几乎后悔安装它们了... - Vitor Hugo Schwaab
1
是的,维托尔,你说得对。我有时候会用真实的手机进行调试。结果证明,英特尔显卡对于Linux来说是最好的朋友。 - Mehdi Haghgoo
1
我大部分时间都使用真实手机,但我的一个当前项目需要多手机通信。具体来说是用户之间的聊天。结果在调试时发现我需要多个手机才能与自己聊天... =/ - Vitor Hugo Schwaab
@VitorHugoSchwaab 在这种情况下,我想你需要多个模拟器和大量的内存以及耐心。 - Mehdi Haghgoo

2
你尝试过从终端运行AVD管理器吗? 使用命令行控制模拟器 在这里,你可能会找到更多导致模拟器无法正常工作的错误细节。

2

在 Android SDK 中删除 "emulator/lib64" 目录下的 "libstdc++" 目录。模拟器现在将使用系统库。


1
这个程序运行得非常好!比预期的答案还要好。 - Sevastyan Savanyuk

2
有时候杀掉 qemu 进程然后重新启动 AVD 可以解决问题。
killall qemu-system-x86_64

1

我知道这是一个旧线程,但帮助我的答案不在这个页面中:

问题是我的主板的参数“CPU虚拟化”被禁用了。打开后,模拟器开始工作。


1
我遇到了这个问题,发现我的AVD没有足够的内存来运行。为了检查这一点,最好通过终端尝试运行AVD: 首先:通过更改目录(cd)到Android文件夹中Sdk文件夹下的tools文件夹来检查您安装的AVD:

//要从主目录cd到工具目录: cd Android cd Sdk cd tools

进入tools文件夹后,检查已安装的AVD: $ ./emulator -list-avds

要启动已列出的AVD模拟器:

$ ./emulator @complete_name_of_avd

如果您有足够的内存,应该能够成功启动已启动的AVD。如果由于内存问题无法启动,则会通过终端获得相关信息。释放设备上足够的内存以确保您能够成功运行AVD。

此外,您可能需要重新考虑使用虚拟模拟器测试应用程序,因为它会大大拖慢机器。通过USB连接的物理设备将更好地使用。只需确保您已启用该特定设备上的调试,您就可以在部署应用程序的选项列表中找到它。


1

我在Fedora 32上遇到了类似的问题,花了几天时间摸索。

我必须让系统卸载免费的nouveau图形驱动程序并安装/加载非免费的nvidia驱动程序。

非常有用:

https://rpmfusion.org/Howto/NVIDIA

为了检查加载的驱动程序,我使用了:

lshw -c video

从rpmfusion中获取正确的rpm包很困难。

如果未加载nvidia,则可以检查:

more /var/log/messages | grep nvidia

它告诉我要使用哪个驱动程序系列。

安装成功nvidia驱动程序后,我可以在AVD管理器中使用HW图形选项。


免费的Nvidia驱动程序是否与Nvidia显卡兼容?我几年前曾经遇到过一些问题。然后完全转向了英特尔图形。 - Mehdi Haghgoo

1

以上方法都没有帮到我。对于版本为2021.*和2022.*的用户,只需禁用ipv6即可解决问题。如果您真的需要ipv6,我不清楚该怎么办,但只有执行此操作才能解决我的问题。 请查阅您的Linux发行版手册以获取有关禁用ipv6的详细信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接