Android 模拟器快照错误

Posted

技术标签:

【中文标题】Android 模拟器快照错误【英文标题】:Android Emulator snapshot error 【发布时间】:2012-05-20 08:48:25 【问题描述】:

在 eclipse 3.7.0 中启动我的应用程序时,我收到一个错误...

Emulator] 模拟器:错误:无法从快照加载虚拟机。已为不同的硬件配置保存快照。

我已多次运行此应用程序而没有出现错误,但现在显示此错误。我检查了我的 AVD 管理器,我的平台和 API 级别是正确的。

【问题讨论】:

【参考方案1】:

这是因为退出模拟器的过程没有正确完成。尝试通过

找到正在运行的模拟器

ps -ef |grep 模拟器

然后它会列出所有的模拟器任务。尝试通过

杀死正在运行的模拟器

杀死 -9

注意:不要杀死下面的

用户 0 11:27 pts/11 00:00:00 grep --color=auto emulator

【讨论】:

【参考方案2】:

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

【讨论】:

无论如何这不是一个解决方案,因此应该将其作为一种解决方法。问题是即使硬件发生了变化,也会发生错误,所以如果你真的想使用快照功能让模拟器启动得更快,你不能因为这个问题。无论如何,这似乎是一个错误。我随机体验它,但大多数时候我尝试启动一个模拟器实例而不改变任何内容并以正确的方式关闭它。【参考方案3】:

请注意:在 Eclipse 之后关闭模拟器也会导致同样的错误。在这种情况下,当然没有硬件更改,但会出现此错误:

无法从快照加载虚拟机。快照已保存一段时间 不同的硬件配置。

所以总是在模拟器之前关闭 Eclipse。

【讨论】:

【参考方案4】:

这更容易。您只需要更改您的虚拟 Android 设备的名称,然后删除您不充电并准备好的设备 :)

【讨论】:

【参考方案5】:

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

    打开 AVD 选择您的设备并按开始... 取消选中启动快照

【讨论】:

【参考方案6】:

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

【讨论】:

这个!删除 AVD 只是为了改变一个设置是疯了。 我也有同样的问题,我没有勾选“快照”选项。它工作正常。谢谢普拉蒂克。 这应该是真正的答案【参考方案7】:

要删除系统中存储的快照列表:

rm ~/.android/avd/[your_avd_name]/snapshots.img*

【讨论】:

已更改为rm -rf ~/.android/avd/[your_avd_name].avd/snapshots/【参考方案8】:

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

【讨论】:

【参考方案9】:

最后我得到了解决方案,请遵循这些 步骤: 1) 打开 avd 管理器 2) 选择产生此错误的 avd-“错误:无法从快照加载 VM。快照已保存用于不同的硬件配置。” 3)点击开始 4)现在取消选中这两个选项-“从快照启动”和“保存快照” 5)现在检查“擦除用户数据” 6) 立即启动 avd 7)一旦显示“ANDROID”,关闭avd 8) 现在再次打开 avd 管理器 9)取消选中“擦除用户数据” 10)检查这两个选项-“从快照启动”和“保存快照” 11) 现在启动 avd,它可以很容易地从快照中加载而不会出错

【讨论】:

【参考方案10】:

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

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

【讨论】:

【参考方案11】:

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

【讨论】:

【参考方案12】:

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

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

【讨论】:

【参考方案13】:

我和Timmmm有同样的问题,没有办法解决。

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

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

这比重新创建机器更容易,但会删除您的快照,然后您可以像往常一样再次使用它。

【讨论】:

【参考方案14】:

这是known issue。希望它会在 Android SDK 的下一个版本中得到修复,但谁知道呢?我认为user1165694 的解决方案比针对该问题的建议解决方案更容易。

【讨论】:

【参考方案15】:

已解决的问题:

    进入项目并选择清理 转到 Window>AVD Manager>删除并创建一个新的 AVD 重新启动应用程序,模拟器需要几分钟才能加载。

【讨论】:

感谢您的解决方案..今天也遇到了这个问题。 我认为在这种情况下删除 AVD 是一种矫枉过正的做法。最简单的解决方案是选择擦除用户数据或使用@Chilledrat 的解决方案uncheck the Launch with snapshot, but keep Save snapshot checked,这将导致下次关闭虚拟设备时忽略并覆盖快照。【参考方案16】:

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

    将 AVD 配置改回原来的样子。 编辑 AVD 以禁用快照。 或 下次启动 AVD 时,取消选中 Launch with snapshot,但保持 Save snapshot 处于选中状态。这样,快照将在启动时被忽略,但在您退出时会被覆盖。然后,您将能够像以前一样使用快照进行后续运行。

【讨论】:

其实我根本没有改变配置就得到了这个错误。它是众多与 Eclipse 相关的错误之一。 咳嗽 broken pipe. 经过更多的体验,相信可能是模拟器没有正确关闭导致快照损坏。 @Timmmm:可能是;我只能根据我自己的经验说话,我在上面已经做过。 TBH 我对 ADT 并没有太多抱怨,但总有更多答案的空间;-) 如果您认为您所经历的是一个冷冰冰的虫子,您有没有向 Google 报告过? 是的,我认为它在某处的错误数据库中。取消选中“从快照启动”也不会那么糟糕,这也意味着它不会保存到快照,所以没有办法(我可以看到)在不删除/重新创建的情况下恢复它AVD。编辑:这是错误,实际上有关于如何恢复模拟器的建议,但它比删除 AVD 更努力:code.google.com/p/android/issues/detail?id=29923 没关系 - 我在 AVD 的“开始”按钮对话框中找到了您提到的选项,而不是运行配置选项。希望对某人有所帮助。【参考方案17】:

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

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

在我的情况下,它运行............

【讨论】:

以上是关于Android 模拟器快照错误的主要内容,如果未能解决你的问题,请参考以下文章

Android:为啥快照和gpu是互斥的?

如何在 Android 模拟器中快照 sd 卡内存?

你如何保存android模拟器快照?

模拟器:错误:“Nexus_4_API_27”的快照操作处于挂起状态,超时已过期。退出

怎样高速启动Android模拟器(Android Emulator)

SQLite数据库从Android模拟器中消失了