2011-01-30 84 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選項將啓動從快照恢復。