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

Gau*_*rav 34 android android-emulator

刚刚发布了Android开发工具的更新,使您可以从模拟器快照进行保存和还原.有谁知道如何使用此功能?这将大大减少仿真器的加载时间!但我找不到告诉模拟器这样做的方法.谢谢.

Dav*_*ean 29

Honeycomb推出了这个功能,非常酷!这就像笔记本电脑上的休眠功能.您将模拟器的状态保存到一个大文件中,稍后从该文件恢复其状态.

有两种方法可以实现它.第一种方法是在从Android SDK和AVD Manager启动模拟器时在"启动选项"对话框中设置所需的选项(请参见下图).Wipe用户数据选项仍然存在,它将从头开始创建一个新系统.新快照选项是从快照启动(如果之前已保存过),或者在仿真器关闭时保存到快照.显然,您必须先保存快照,然后才能从一个快照启动.快照文件可能会变得相当大,这会增加模拟器关闭时退出所需的时间.但这是值得的.与通过Android的整个启动序列相比,从快照启动非常快.您可以执行的一个技巧是保存到快照一次,然后从快照启动但在第一次之后不保存到快照.你的初创公司会很快,你的出口会很快.无论您在每个仿真器会话中执行什么操作,您每次都将从相同的快照状态开始.

在此输入图像描述

使用快照的另一种方法是从模拟器的命令行.文档目前没有提到这些选项,但通过在模拟器上调用帮助选项,我们发现:

-snapstorage <file>            file that contains all state snapshots (default <datadir>/snapshots.img)
-no-snapstorage                do not mount a snapshot storage file (this disables all snapshot functionality)
-snapshot <name>               name of snapshot within storage file for auto-start and auto-save (default 'default-boot')
-no-snapshot                   perform a full boot and do not do not auto-save, but qemu vmload and vmsave operate on snapstorage
-no-snapshot-save              do not auto-save to snapshot on exit: abandon changed state
-no-snapshot-load              do not auto-start from snapshot: perform a full boot
-snapshot-list                 show a list of available snapshots
-no-snapshot-update-time       do not do try to correct snapshot time on restore
Run Code Online (Sandbox Code Playgroud)

我没有尝试从命令行创建快照,因为"启动选项"对话框更容易.编辑:还有一件事,快照文件存储在与AVD文件相同的位置.

  • 一小部分:除非在创建AVD时选择"启用快照",否则快照选项将显示为灰色. (4认同)
  • 确实如此.但您可以编辑现有AVD以启用快照.因此,无需返回并重新创建所有现有的. (3认同)
  • 包含*命令行*版本和存储路径的+1 (2认同)

Jan*_*kel 21

显然你也可以通过控制台界面来做到这一点:

$ telnet localhost 5554
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Android Console: type 'help' for a list of commands
OK
avd snapshot save foo
Run Code Online (Sandbox Code Playgroud)


Rom*_*hin 7

基于我找到了这个工作解决方案的最佳答案之一:

adb emu avd snapshot save foo
Run Code Online (Sandbox Code Playgroud)

特别是它与这个一起非常有用:

adb emu avd snapshot load bar
Run Code Online (Sandbox Code Playgroud)


Tan*_*dal 2

我不知道是否有任何选项可以从中恢复。

但您可以保存模拟器的当前快照

将您的视角从 更改JavaDDMS。通过单击红色圆圈中的按钮,您可以保存模拟器当前快照的副本

在此输入图像描述