android emulator snapshot

来源:互联网 发布:软件停服通知 编辑:程序博客网 时间:2024/05/01 01:35

本来打算采用process snapshot方面,自己写的话太复杂,而且也不一定能成功。

win7更可恶,想用process monitor看看emulator对文件的操作,好猜到snapshot的保存位置,结果win7跑不了pm。

人工猜测到snapshot是在img里面


anwser:

Honeycomb introduced this feature, and it's pretty cool! It's like the hibernate feature on a laptop. You're saving the state of the emulator into a big file, and restoring its state from the file later.

There are a couple of ways to get it. The first way is to set your desired options in the Launch Options dialog when Starting the emulator from the Android SDK and AVD Manager (see image below). The Wipe user data option is still there from before, and that will create a new system from scratch. The new snapshot options are to Launch from snapshot (if one has been saved previously), or to Save to snapshot when the emulator shuts down. Obviously you have to save a snapshot before you can launch from one. The snapshot file can get rather large, and this adds to how long it takes for the emulator to exit when you close it. But it's worth it. Launching from a snapshot is very quick, compared to going through the entire boot-up sequence of Android. One of the tricks you could do is Save to snapshot once, then Launch from snapshot but don't Save to snapshot after that first time. Your startups will be fast and your exits will be fast. You'll be starting from the same snapshot state every time though, no matter what you do in each emulator session.

The other way to use snapshots is from the command line of emulator. The documentation currently doesn't mention these options, but by invoking the help option on emulator, we find these:

-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

I haven't tried snapshots from the command line since the Launch Options dialog is easier. EDIT: One more thing, the snapshot file gets stored in the same place as your AVD files.



原创粉丝点击