快照

「快照」是 Android 虛擬裝置 (AVD) 的已儲存映像檔,可保留裝置在儲存時的完整狀態,包括 OS 設定、應用程式狀態和使用者資料。您可以透過載入快照返回已儲存的系統狀態,節省等待虛擬裝置上的作業系統和應用程式重新啟動的時間,輕鬆讓應用程式回到您要恢復測試的狀態。藉由載入快照來啟動虛擬裝置,就如同喚醒休眠狀態的實體裝置,而不是從關機狀態啟動裝置。

您可以為每個 AVD 設定一個「Quick Boot」快照以及不限數量的一般快照。

如要充分運用快照,最簡單的方法是使用 Quick Boot 快照。根據預設,每個 AVD 都會設為在結束時自動儲存 Quick Boot 快照,並在啟動時載入 Quick Boot 快照。

AVD 首次啟動時,必須執行「冷啟動」(就像啟動裝置一樣)。如果您啟用了 Quick Boot,後續的每次啟動都會從指定快照載入,而系統也會還原成該快照中儲存的狀態。

相較於冷啟動,AVD 的啟動速度最多可快 10 倍。因此,建議您在 AVD 初次啟動後,盡可能使用快速啟動功能 (如果可行)。

快照功能適用於快照儲存時一併納入的系統映像檔、AVD 設定和模擬器功能。當您對上述任一適用範圍進行變更時,受影響 AVD 的所有快照都會失效。只要對 Android Emulator、系統映像檔或 AVD 設定進行更新,都會一併重設 AVD 的儲存狀態,因此 AVD 必須在您下次啟動時執行冷啟動。

用於儲存、載入及管理快照的多數控制項都位於「Snapshots」窗格的「Snapshots」和「Settings」分頁中。如果您是在 Android Studio 的工具視窗中執行模擬器,「Snapshots」窗格按鈕位於模擬器工具列中。如果您是在 Android Studio 以外的獨立視窗中執行模擬器,則「Snapshots」窗格位於「Extended controls」視窗中。

當您透過指令列啟動模擬器時,也能控管 Quick Boot 選項。

儲存 Quick Boot 快照

您可以指定是否要讓模擬器在關閉時自動儲存快照。如要控制這項行為,請按照下列步驟操作:

  1. 開啟快照設定。如果模擬器內嵌在 Android Studio 中,請按一下工具列中的「Snapshots」。如果模擬器是在獨立視窗中執行,請開啟「Extended controls」視窗。
  2. 前往控制項「Snapshots」類別中的「Settings」分頁。
  3. 使用「Auto-save current state to Quickboot」選單選取下列任一選項:

    • Yes:關閉模擬器時一律儲存 AVD 快照。此為預設值。

    • No:關閉模擬器時不要儲存 AVD 快照。

您選取的設定只會套用至開啟的 AVD。在 ADB 離線的情況下 (例如 AVD 仍在啟動中),您無法儲存快照。

儲存一般快照

雖然每個 AVD 只能設定一個 Quick Boot 快照,卻可以設定多個一般快照。

如要儲存一般快照,請開啟「Snapshots」窗格,然後按一下窗格右下角的「Take snapshot」按鈕。

如要編輯所選快照的名稱和說明,請按一下窗格底部的「Edit」按鈕

刪除快照

如要手動刪除快照,請開啟「Snapshots」窗格,選取快照並按一下窗格底部的「Delete」按鈕

您也可以指定是否在快照失效時 (例如 AVD 設定或模擬器版本變更時),要求模擬器自動刪除快照。根據預設,模擬器會詢問您是否要刪除無效快照。如要變更這項設定,請在「Snapshots」窗格的「Settings」分頁中使用「Delete invalid snapshots」選單。

載入快照

每次要載入快照時,請開啟模擬器的「Snapshots」窗格,選取「Snapshots」類別,然後選擇快照並按一下窗格底部的「Load」按鈕

在 Android Studio 3.2 以上版本中,每項裝置設定都含有「Boot option」控制項。這個控制項位於「Virtual Device Configuration」對話方塊的進階設定中。您可以使用這個控制項,指定啟動 AVD 時要載入哪一個快照。

停用 Quick Boot

如要停用 Quick Boot,讓 AVD 一律執行冷啟動,請按照下列步驟操作:

  1. 依序選取「Tools」>「Device Manager」,然後按一下「Edit this AVD」圖示
  2. 按一下「Show Advanced Settings」,然後向下捲動至「Emulated Performance」
  3. 選取「Cold boot」

單次冷啟動

在「Device Manager」中點選 AVD 選單中的「Cold Boot」,不必完全停用 Quick Boot。

快照的系統需求與疑難排解

  • 快照功能不適用於 Android 4.0.4 (API 級別 15) 以下版本。
  • 快照功能不適用於 Android 8.0 (API 級別 26) 的 ARM 系統映像檔。
  • 如果模擬器無法透過快照啟動,請在裝置管理工具中為 AVD 選取「Cold Boot」,然後提交錯誤報告
  • 啟用軟體轉譯功能時,可能會無法使用快照功能。如果快照功能無法運作,請按一下「Device Manager」中的「Edit this AVD」圖示 ,然後將「Graphics」變更為「Hardware」或「Automatic」
  • 載入或儲存快照容易佔用大量記憶體。載入或儲存作業啟動後,如果可用 RAM 不足,作業系統可能會將 RAM 內容遷移至硬碟,因而大幅降低運作速度。如果您發現快照載入或儲存速度非常緩慢,可以釋出 RAM 加快運作速度。關閉作業時非必要的應用程式,是釋出 RAM 的好方法。