Android Studio:模拟器在一段时间后持续崩溃

6
每次我运行模拟器时,一开始它都能正常运行,但几分钟后就会崩溃,并显示以下错误:
emulator process finished with exit code 1073740791 (0xC0000409)

我正在使用Windows 10家庭版。BIOS中启用了虚拟化功能。我没有安装任何其他虚拟化软件(如Virtual Box)。
有任何想法为什么会出现这种情况吗?

我应该补充说明,对于我来说模拟器甚至从未完成启动。它在启动后2或3秒钟就会崩溃。 - Tim
@Tim:请尝试两件事情。1)将您的图形选项设置为仅软件,可能与您的图形错误有关;2)尝试取消选择多核CPU。 - Mustansar Saeed
@MustansarSaeed 您指的是哪些图形选项?多核复选框在哪里?我现在不在我的电脑上。 - Tim
@Tim:在“仿真器”高级设置中 - Mustansar Saeed
@MustansarSaeed 我创建了一个不同的AVD,允许我设置软件图形,但是当我尝试运行它时,仍然出现了相同的错误。 - Tim
显示剩余7条评论
6个回答

2

似乎有一个有缺陷的显卡驱动程序可能会导致类似的问题。我不确定这是否是你在这里遇到的问题,但值得一提的是:如果你使用的是带有378.49版本(也可能有其他版本!)的NVIDIA显卡驱动程序,则由于与Java的某些不兼容性,你可能会遇到此错误。
请更新你的显卡驱动程序或将其回滚到旧版稳定版本并重试!并在这里阅读更多信息。


我有一张英伟达显卡,但是那个有问题的驱动程序已经有3年了。我安装了最新的441.41驱动程序。回滚到2017年的驱动程序不是一个选择。 - Tim
我不是说你应该回退到2017年的版本,只是试试425.31版本。而且,我不确定是否只有错误的驱动程序会导致这个问题。可能还有其他来源会引起这个问题。 - Farhad Rahmanifard

1
我可能知道你的问题所在:
重新启动adb服务器,可以通过以下方式使用命令提示符来执行:
首先使用cd命令进入C/users/(YOUR USERNAME)/AppData/Local/Android/Sdk/platform-tools目录。 然后只需键入adb kill-server和adb start-server即可,就像这样;
cd C/users/(YOUR USERNAME)/AppData/Local/Android/Sdk/platform-tools
adb kill-server
adb start-server

如果那不起作用,尝试执行this问题中描述的擦除和冷启动。


0

试一下这个:

到工具==>SDK管理器==>Android SDK

(外观&行为=>系统设置=>Android SDK)==>SDK工具==>Intel x86模拟器加速器(安装此项)。

它会解决你的问题。希望能帮到你。


我有一颗AMD的CPU。 - Tim

0

这里有几个你可以尝试的方法:

  1. 进入 AVD 管理器,打开虚拟设备的设置。在图形的仿真性能部分,将其从自动更改为软件。
  2. 查看此处。可能存在与其他软件不兼容的情况,如 Docker、Oracle Virtual Box 和其他使用 VCPU 的产品。
  3. 您可以尝试完全重新安装 Android Studio,并确保完成所有更新。在使用的旧版模拟器中可能存在错误,在较新版本中已修复。

编辑

还有几件事情可以尝试:

  1. 打开 Android 虚拟设备管理器,然后单击虚拟设备选项,然后擦除数据,然后冷启动。
  2. 在终端中转到 C:/users/(username)/AppData/Local/Android/Sdk/platform-tools,然后键入 adb kill-server,然后 adb start-server。

编辑

你也可以尝试检查内存泄漏https://developer.android.com/studio/profile/memory-profiler,并尝试增加模拟器可用的RAM数量。

转到工具->Android->AVD管理器,然后编辑您的AVD,在弹出窗口中单击“显示高级设置”,最后增加RAM的数量。

编辑

这可能是libGL或libstdc++的问题。请参见here


1
  1. 对我来说,该字段不可编辑,已设置为自动。
  2. 我没有任何一个。
  3. 这是一个全新安装的AS 4.0,并更新了所有工具。
- Tim
1
我已经尝试了所有显而易见的事情。应用程序泄漏的分析是无关紧要的,因为我甚至无法运行应用程序。 - Tim

0

1
是的,这些步骤相当明显。顺便说一下,这里的错误代码是不同的。 - Tim
我也注意到了。但考虑到你的模拟器崩溃了,而且你没有列出你已经尝试解决问题的步骤,有人可能会认为你还没有尝试过这些步骤。你可能需要更新你的问题,列出你已经尝试过的“显而易见的东西”,以避免“显而易见”的答案! - Opatile Kelobang

0

你说你正在使用Windows 10?错误代码0xC0000409是由堆栈缓冲区溢出引起的。它似乎在几个地方弹出,所有这些地方都与Windows系统有关(可能与Android模拟器完全无关)。如果是这种情况,我找到了一些帖子可能会帮助解决你的问题。

http://www.cplusplus.com/forum/windows/39061/

https://answers.microsoft.com/en-us/windows/forum/all/werfaultexe-the-exception-unknown-software/627da5c0-004a-e011-8dfc-68b599b31bf5?auth=1

http://windowsbulletin.com/solved-exception-code-0xc0000409-error/

https://www.tenforums.com/tutorials/16397-repair-install-windows-10-place-upgrade.html


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