2011-01-30 81 views
34

刚刚发布了Android开发工具的更新,使您可以从模拟器快照进行保存和恢复。有谁知道如何使用这个功能?这将大大减少模拟器的加载时间!但是我找不到一种方法告诉模拟器这样做。谢谢。你如何保存android模拟器快照?

回答

2

我不知道是否有任何可用的恢复选项。

但是您可以在观察透视保存模拟器的当前快照

变化从JavaDDMS。 通过点击红色包围的按钮,你可以保存一份你的模拟器的当前快照

enter image description here

+0

感谢您的额外信息Tanmay。你圈出的按钮有助于拍摄截图:)而且这也很有帮助。我的意思是“保存/恢复”仿真器的“状态”。一个功能就在昨天推出。试试看! – Gaurav 2011-01-30 12:29:04

+0

我不知道更新。感谢那。 – 2011-01-30 14:13:12

+0

这是否适用于android 8 SDK? – hoffmanc 2011-12-21 00:53:54

3

权。假设你在创建avd时选中了“Enable Snapshot”,只需关闭模拟器即可保存它的状态,并在下次运行时恢复,无论是从管理器还是eclipse。

29

蜂窝引入了这个特性,它非常酷!这就像笔记本电脑上的休眠功能。您将模拟器的状态保存到一个大文件中,并在稍后从文件中恢复其状态。

有几种方法可以得到它。第一种方法是在从Android SDK和AVD管理器启动模拟器时在“启动选项”对话框中设置所需的选项(请参阅下图)。擦除用户数据选项仍然存在,这将从头开始创建一个新系统。新的快照选项是从快照启动(如果先前已保存),或者当模拟器关闭时保存到快照。很明显,您必须先保存快照,然后才能从一个快照启动。快照文件可能会变得相当大,这增加了关闭模拟器时退出需要多长时间。但它是值得的。与通过Android的整个启动顺序相比,从快照启动非常快。您可以做的一个技巧是保存到快照一次,然后从快照启动,但不要在第一次保存到快照。你的创业公司会很快,你的退出速度会很快。无论您在每个模拟器会话中做什么,每次都会从相同的快照状态开始。

enter image description here

的另一种方法使用快照是从仿真器的命令行。自启动选项对话框更容易在命令行

-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 

我没试过快照:文档目前没有提到这些选项,而是通过调用模拟器的帮助选项,我们发现这些。编辑:另外一件事,快照文件被存储在与您的AVD文件相同的地方。

+4

一个小的补充:快照选项将变灰,除非在创建AVD时选择了“启用快照”。 – 2011-02-12 13:19:59

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 
1

对于shell用户,如果你正在运行一个--no-window仿真器:它看起来像使用kill -2信号模拟器程序将保存默认启动快照,假设您使用--snapshot选项创建了模拟器。

这样做:

killall -2 emulator64-x86 

下一次启动该仿真器,用什么,但-no-snapshot-load选项将启动从快照恢复。