Zrzuty

Zrzut to zapisany obraz wirtualnego urządzenia z Androidem (AVD), który zachowuje cały stan urządzenia z chwili zapisania – w tym ustawienia systemu operacyjnego, stan aplikacji i dane użytkownika. Możesz wrócić do zapisanego stanu systemu, wczytając zrzut. Dzięki temu nie musisz czekać na ponowne uruchomienie systemu operacyjnego i aplikacji na urządzeniu wirtualnym, a także zaoszczędzisz czas potrzebny na przywrócenie aplikacji do stanu, w którym chcesz wznowić testowanie. Uruchamianie urządzenia wirtualnego przez wczytanie zrzutu ekranu przypomina wybudzanie urządzenia fizycznego ze stanu uśpienia, a nie wyłączenie go ze stanu wyłączenia.

Dla każdego AVD można mieć 1 zrzut szybkiego uruchamiania i dowolną liczbę ogólnych zrzutów.

Najprostszym sposobem na wykorzystanie zrzutów jest użycie szybkiego zrzutu. Domyślnie każdy program AVD jest skonfigurowany tak, aby podczas zamykania automatycznie zapisywać zrzut szybkiego uruchamiania i wczytywać go z poziomu szybkiego rozruchu.

Przy pierwszym uruchomieniu AVD musi się uruchomić „na zimno”, tak jak w przypadku włączania urządzenia. Jeśli funkcja szybkiego uruchamiania jest włączona, wszystkie kolejne uruchomienia są wczytywane z określonego zrzutu, a system jest przywracany do stanu zapisanego w tym zrzucie.

AVD może uruchamiać się nawet 10 razy szybciej przy użyciu zrzutu szybkiego rozruchu niż w przypadku „zimnego rozruchu”. Dlatego zalecamy korzystanie z funkcji szybkiego uruchamiania (jeśli to możliwe) po pierwszym uruchomieniu AVD.

Zrzuty są prawidłowe w przypadku obrazu systemu, konfiguracji AVD i funkcji emulatora, z którymi zostały zapisane. Gdy wprowadzisz zmianę w dowolnym z tych obszarów, wszystkie zrzuty dysku AVD, których dotyczy problem, stają się nieprawidłowe. Każda aktualizacja ustawień emulatora Androida, obrazu systemu lub ustawień AVD resetuje zapisany stan AVD, więc następnym razem, gdy uruchomisz AVD, będzie musiał wykonać „na zimno”.

Większość opcji dotyczących zapisywania i wczytywania zrzutów oraz zarządzania nimi znajduje się na kartach Zrzuty dysku i Ustawienia w panelu Zrzuty dysku. Jeśli uruchamiasz emulator w oknie narzędzi w Android Studio, przycisk panelu Zrzuty dysku znajduje się na pasku narzędzi emulatora. Jeśli uruchamiasz emulator w osobnym oknie poza Android Studio, panel Zrzuty dysku znajduje się w oknie Rozszerzone ustawienia.

Opcje szybkiego uruchamiania możesz też kontrolować podczas uruchamiania emulatora z poziomu wiersza poleceń.

Zapisuj szybkie zrzuty ekranu

Możesz określić, czy emulator ma automatycznie zapisywać zrzut po zamknięciu. Aby sterować tym działaniem, wykonaj te czynności:

  1. Otwórz ustawienia zrzutów. Jeśli emulator jest umieszczony w Android Studio, kliknij Zrzuty na pasku narzędzi. Jeśli emulator jest w osobnym oknie, otwórz okno Rozszerzone ustawienia.
  2. W kategorii Zrzuty dysku otwórz kartę Ustawienia.
  3. Użyj menu Automatycznie zapisuj bieżący stan w szybkim rozruchu, aby wybrać jedną z tych opcji:

    • Tak: zawsze zapisuj zrzut AVD po zamknięciu emulatora. Jest to wartość domyślna.

    • Nie: nie zapisuj zrzutu AVD po zamknięciu emulatora.

Twój wybór dotyczy tylko otwartego AVD. Nie można zapisywać zrzutów ekranu, gdy ADB jest offline (np. gdy AVD nadal się uruchamia).

Zapisz ogólne zrzuty

Dla każdego AVD możesz mieć tylko 1 zrzut szybkiego uruchamiania, natomiast dla każdego AVD możesz mieć kilka ogólnych zrzutów.

Aby zapisać ogólny zrzut, otwórz panel Zrzuty dysku i kliknij przycisk Zrób zrzut w prawym dolnym rogu.

Aby edytować nazwę i opis wybranego zrzutu, kliknij przycisk Edytuj u dołu panelu.

Usuń zrzut

Aby ręcznie usunąć zrzut, otwórz panel Zrzuty dysku, wybierz zrzut i kliknij przycisk usuwania u dołu panelu.

Możesz też określić, czy emulator ma automatycznie usuwać zrzuty, gdy staną się nieprawidłowe, np. po zmianie ustawień AVD lub wersji emulatora. Domyślnie emulator pyta, czy ma usuwać nieprawidłowe zrzuty. Możesz zmienić to ustawienie za pomocą menu Usuń nieprawidłowe zrzuty na karcie Ustawienia w panelu Zrzuty dysku.

Wczytaj zrzut

Aby wczytać zrzut w dowolnym momencie, otwórz panel Zrzuty emulatora, wybierz kategorię Zrzuty dysku, wybierz zrzut i kliknij przycisk ładowania u dołu panelu.

W Android Studio w wersji 3.2 i nowszych każda konfiguracja urządzenia zawiera opcję Opcji uruchamiania w ustawieniach zaawansowanych w oknie Konfiguracja urządzenia wirtualnego. Za pomocą tej opcji możesz określić, który zrzut ma być wczytywany podczas uruchamiania danego AVD.

Wyłącz funkcję Szybkie uruchamianie

Jeśli chcesz wyłączyć szybki rozruch, tak aby AVD zawsze uruchamiał „na zimno”:

  1. Wybierz kolejno Narzędzia > Menedżer urządzeń i kliknij Edytuj ten średni czas wyświetlania .
  2. Kliknij Show Advanced Settings (Pokaż ustawienia zaawansowane) i przewiń w dół do sekcji Emuled Performance (Emulowana wydajność).
  3. Wybierz Cold rozruch.

Jednorazowe uruchomienie zimnego startu

Zamiast całkowicie wyłączać funkcję szybkiego uruchamiania, możesz uruchomić ją „na zimno”, klikając Zimny rozruch w menu AVD w Menedżerze urządzeń.

Wymagania dotyczące zrzutów i rozwiązywanie problemów

  • Zrzuty nie działają w Androidzie 4.0.4 (poziom interfejsu API 15) i starszych.
  • W Androidzie 8.0 (poziom interfejsu API 26) zrzuty nie działają z obrazami systemu ARM.
  • Jeśli nie uda się uruchomić emulatora ze zrzutu, wybierz dla aplikacji AVD Cold rozruch w Menedżerze urządzeń i prześlij raport o błędzie.
  • Zrzuty nie są wiarygodne, gdy włączone jest renderowanie programowe. Jeśli zrzuty nie działają, kliknij Edytuj ten plik AVD w Menedżerze urządzeń i zmień opcję Grafika na Sprzęt lub Automatycznie.
  • Wczytywanie lub zapisywanie zrzutu wymaga dużej ilości pamięci. Jeśli po rozpoczęciu operacji wczytywania lub zapisywania nie masz wystarczającej ilości wolnej pamięci RAM, system operacyjny może zamienić pamięć RAM na dysk twardy, co może znacznie spowolnić działanie. Jeśli zauważysz bardzo powolne ładowanie lub zapisywanie zrzutów, możesz przyspieszyć te operacje, zwalniając pamięć RAM. Dobrym sposobem na zwolnienie pamięci RAM jest zamknięcie aplikacji, które nie są niezbędne.