Android 15 memperkenalkan cara mengambil snapshot dan memulihkan {i>snapshot<i} perangkat virtual Cuttlefish. Mengambil cuplikan dari Perangkat cumi-cumi memungkinkan Anda menyimpan status perangkat dalam bentuk image pada disk. Anda bisa memulihkan {i>snapshot <i}untuk memunculkan perangkat Cuttlefish ke status yang disimpan sebelumnya.
Anda dapat menggunakan snapshot di berbagai alur kerja otomatis atau manual. Kapan melakukan prosedur yang memodifikasi perangkat, Anda dapat mengambil cuplikan perangkat untuk memastikan Anda dapat memulihkan perangkat ke status tertentu. Misalnya, saat menjalankan rangkaian pengujian yang mengubah status perangkat dan berpotensi menyebabkan masalah atau ketidakstabilan dalam pengujian berikut, Anda dapat mengambil snapshot sehingga Anda dapat memulihkan perangkat ke kondisi tersimpan setelah untuk memastikan bahwa pengujian berikutnya berjalan dengan baik.
Contoh alur kerja lain yang memanfaatkan snapshot adalah saat menguji perilaku aplikasi. Saat menguji perilaku aplikasi berdasarkan serangkaian tambahan, Anda dapat membuat snapshot di antara tindakan saat aplikasi sedang berjalan yang memungkinkan Anda memulihkan ke snapshot tersebut tanpa harus memulai ulang dari memulai. Misalnya, jika peluncuran {i>game<i} memiliki waktu yang lama, Anda dapat mengambil {i>snapshot<i} setelah mencapai menu utama sehingga Anda dapat memulihkan perangkat ke keadaan itu, sehingga melewatkan waktu memunculkan.
Mengambil snapshot perangkat Cuttlefish
Saat mengambil snapshot perangkat, perangkat Cuttlefish harus ditangguhkan untuk memastikan perangkat Cuttlefish dalam keadaan stabil. Saat perangkat ditangguhkan, semua vCPU dan perangkat akan dihentikan, dan semua buffer status mereka ke VM. Snapshot kemudian menyimpan status vCPU, memori, dan status perangkat ke {i>disk<i} di folder tujuan yang ditentukan.
VirtiosFS tidak didukung dan harus dinonaktifkan saat mengambil snapshot. Kepada
nonaktifkan VirtioFS, teruskan argumen
--enable_virtiofs=false
saat menjalankan cvd start
.
Hanya mode GPU SwiftShader (guest_swiftshader
) yang didukung
snapshot. Mode grafis akselerasi lainnya
tidak dapat digunakan.
Langkah-langkah berikut menjelaskan proses peluncuran perangkat Cuttlefish dan melakukan snapshot.
Meluncurkan perangkat, sambil menonaktifkan VirtioFS. (Anda kemudian dapat menggunakan perangkat.)
cvd start --enable_virtiofs=false --gpu_mode=guest_swiftshader
Ambil snapshot dengan menjalankan
cvd snapshot_take
dengan tanda berikut:--force
: Jika folder ada di jalur snapshot yang ditentukan, penanda memastikan bahwa folder yang ada akan dihapus, dan folder baru dibuat di jalur snapshot yang berisi snapshot--auto_suspend
: Menangguhkan perangkat sebelum snapshot diambil dan melanjutkan perangkat setelah snapshot diambil.--snapshot_path
: Jalur yang ditentukan tempat folder baru dibuat dengan snapshot.
cvd snapshot_take --force --auto_suspend \ --snapshot_path=PATH
Memulihkan perangkat Cuttlefish
Ketika memulihkan {i>snapshot <i}perangkat Cuttlefish, instance Cuttlefish untuk tempat {i>snapshot<i} yang diambil harus dihentikan. Jika instance sudah dihentikan, tidak diperlukan tindakan lebih lanjut dan snapshot dapat dipulihkan.
Untuk memulihkan snapshot perangkat Cuttlefish, luncurkan perangkat dengan cvd start
dan menyertakan jalur snapshot. Jika nomor instance dasar Sotong,
perangkat yang digunakan untuk mengambil snapshot berbeda dengan instance dasar
nomor instance Cuttlefish saat ini, teruskan instance dasar tersebut
menggunakan flag --base_instance_num
.
cvd start --snapshot_path=PATH \
--base_instance_num=ID
Menangguhkan perangkat Cuttlefish
Anda dapat menangguhkan perangkat Cuttlefish tanpa mengambil snapshot (tidak ada kapasitas disk digunakan untuk menyimpan status). Untuk menangguhkan perangkat Cuttlefish, jalankan:
cvd suspend
Melanjutkan perangkat Cuttlefish
Untuk melanjutkan perangkat Cuttlefish yang ditangguhkan, jalankan:
cvd resume
Memvalidasi fitur Snapshot/Pemulihan
Fitur Ringkasan/Pemulihan dapat divalidasi dengan menjalankan pengujian berikut:
atest SnapshotTest