Android Emulator快照错误


69

在eclipse 3.7.0中启动我的应用程序时,出现错误...

模拟器]模拟器:错误:无法从快照加载Vm。快照已保存为其他硬件配置。

我已经无数次地运行了此应用程序,但是现在显示此错误。我已经检查了我的AVD Manager,并且我的平台和API级别正确。

Answers:


73

问题不在于您的应用,而在于保存的AVD快照。自上次成功运行以来,AVD配置已被编辑。即使更改皮肤/显示分辨率也会产生此错误。您可以:

  1. 将AVD配置更改回原来的样子。
  2. 编辑AVD以禁用快照。要么
  3. 下次启动AVD时,请取消选中“使用快照启动”,但请选中“保存快照”。这样,快照将在启动时被忽略,但在退出时将被覆盖。然后,您将能够像以前一样将快照用于后续运行。

13
实际上,我在完全不更改配置的情况下遇到了此错误。它是许多与Eclipse相关的bug之一。咳嗽 broken pipe
Timmmm 2012年

2
经历了更多之后,我相信这可能是因为仿真器无法正确关闭,并且快照已损坏。
Timmmm 2012年

@Timmmm:可能是;我只能从我自己的经验中发言,如上所述。TBH我对ADT并没有太多的了解,但是总是有更多答案的余地;-)如果您认为自己遇到的是一个令人毛骨悚然的错误,是否已将其报告给Google?
Chilledrat

是的,我认为它在某个地方的错误数据库中。取消选中“从快照启动”也就不错,这也意味着它不会保存到快照,因此(我可以看到)没有删除/重新创建AVD的方法就无法恢复它。编辑:这是错误,实际上是关于如何恢复模拟器的建议,但是比删除AVD还要付出更多的努力:code.google.com/p/android/issues/detail?
id=29923

1
没关系-我在AVD“开始”按钮对话框中找到了您提到的选项,而不是运行配置选项。希望能对某人有所帮助。
Dell Anderson

31

解决问题的方式:

  1. 去项目并选择清洁
  2. 转到窗口> AVD管理器>删除并创建一个新的AVD
  3. 重新启动应用程序,仿真器将花费几分钟的时间来加载。

感谢您的解决方案。今天也遇到了这个问题。
M_x_r 2012年

5
我认为在这种情况下删除AVD是一个过大的杀伤力。最简单的解决方案是选择“擦除用户数据”或使用@Chilledrat的to的解决方案uncheck the Launch with snapshot, but keep Save snapshot checked,这将导致快照在下次关闭虚拟设备时被忽略并被覆盖。
Dzhuneyt 2012年


12

我和Timmmm有相同的问题,没有任何办法可以解决。

通过命令行emulator.exe -avd avdname -snapshot default-boot给我同样的错误。但是我也注意到它可以从GUI启动。

我进入C:\users\uname\.android\avd\The_avd\并删除了snapshots.img.default-boot快照和快照iso文件。

这比重新创建计算机要容易,但是会删除快照,然后可以像平常一样再次使用它。


10

转到窗口-> Android虚拟设备管理器,选择您的虚拟设备,然后禁用从快照启动并保留保存到快照选项,然后单击启动。


2
无论如何,这不是一个解决方案,因此应将其作为一种解决方法。问题是,即使不是真的硬件发生了更改,也会发生错误,因此,如果您实际上想使用快照功能,那么模拟器可以更快地启动,那么您就无法解决此问题。无论如何,这似乎是一个错误。我是随机经历的,但是大多数时候,我尝试启动模拟器实例而无需进行任何更改并以正确的方式关闭它。
Fran Marzoa 2012年

9

也许尝试在Android虚拟设备管理器中禁用硬件快照?它应该安装在您安装android SDK的任何地方。

在此处输入链接说明


这个!删除AVD只是为了更改一项设置是很不容易的。
gcb

1
我也有同样的问题,我没有选中“快照”选项。一切正常。感谢Pratik。
Ramesh Chandran 2013年

1
这应该是真正的答案
Marcote

3

就我而言,似乎是由于我在同一应用程序的两次启动之间关闭了AVD,因此在第二次启动时收到了此错误消息。

我不需要“清理”项目,只需使用AVD管理器手动启动AVD,等待它启动,并在启动完成后再次启动该应用程序。为我工作。


3

在此之前,您可能一直试图从AVD和现在从命令行启动仿真器。大多数AVD使用Arm指令集,因此您可能必须尝试以下操作:

emulator64-arm -avd <your avd label> -no-snapshot-load -no-snapshot-save

3

最终,我得到了解决方案,请按照以下步骤操作:

1)打开avd管理器
2)选择提供此错误的avd-“错误:无法从快照加载VM。快照已保存为其他硬件配置。”
3)点击开始
4)现在取消选中这两个选项-“从快照启动”和“保存快照”
5)现在检查“清除用户数据”
6)立即启动avd
7)在显示“ ANDROID”后,关闭avd
8)现在再次打开avd管理器
9)取消选中“清除用户数据”
10)选中这两个选项-“从快照启动”和“保存快照”
11)现在启动avd,很容易从快照中加载它没有错误



2

如果有人使用IntelliJ则要禁用快照,请执行以下操作:

  1. 打开AVD
  2. 选择您的设备,然后按开始...。
  3. 取消选中启动快照

0

有这个问题。并找到了方法。当我不更改任何配置,而只是再次启动模拟器时。您需要在模拟器中单击“电源”按钮,然后将其关闭。从快照启动后发生的一件令人讨厌的事情是-我需要单击电源按钮才能解锁模拟器。


0

就我而言,当我插入未启用USB调试模式的设备时,会显示此错误。因此找不到设备,运行该应用程序会导致此错误消息显示,具体取决于我的上次运行配置。


0

请注意:在日蚀之后关闭仿真器也会导致同样的错误。在这种情况下,不会改变硬件,但是会显示此错误:

无法从快照加载Vm。快照已保存为其他硬件配置。

因此,始终在模拟器之前关闭Eclipse。


0

这是因为退出模拟器的过程未正确完成。尝试通过以下方式找到正在运行的模拟器

ps -ef | grep仿真器

然后它将列出所有仿真器任务。尝试通过以下方式杀死正在运行的模拟器

杀-9

注意:请勿杀死以下内容

用户0 11:27 pts / 11 00:00:00 grep --color = auto模拟器


-2

清理项目并在具有相同api级别的模拟器上运行。

如果仍然无法解决,请更改项目的api级别,然后在具有相同api级别的模拟器上运行。

就我而言,它运行.....


-2

更容易。您只需要更改虚拟Android设备的名称,然后删除不收费的设备即可:)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.