Pakiet SDK na Androida zawiera emulator urządzeń z Androidem, czyli urządzenie wirtualne, które działa na komputerze. Emulator Androida pozwala tworzyć i testować aplikacje na Androida bez użycia fizycznego urządzenia.
Na tej stronie opisujemy funkcje wiersza poleceń, których możesz używać z emulatorem Androida. Informacje o korzystaniu z interfejsu emulatora Androida znajdziesz w artykule Uruchamianie aplikacji przy użyciu emulatora Androida.
Uruchom emulator
Uruchom emulator za pomocą polecenia emulator
albo zamiast uruchamiać projekt lub uruchamiać za pomocą Menedżera AVD.
Podstawowa składnia wiersza poleceń uruchamiana z poziomu wiersza poleceń terminala:
emulator -avd avd_name [ {-option [value]} … ]
lub
emulator @avd_name [ {-option [value]} … ]
Jeśli na przykład uruchomisz emulator w Android Studio na komputerze Mac, domyślny wiersz poleceń będzie wyglądać tak:
/Users/janedoe/Library/Android/sdk/emulator/emulator -avd Nexus_5X_API_23 -netdelay none -netspeed full
Opcje uruchamiania możesz określić podczas uruchamiania emulatora, ale nie po jego uruchomieniu.
Aby wyświetlić listę nazw AVD, wpisz to polecenie:
emulator -list-avds
Użyj tej opcji, aby wyświetlić listę nazw AVD z katalogu głównego Androida.
Możesz zastąpić domyślny katalog główny, ustawiając zmienną środowiskową ANDROID_SDK_HOME
określającą katalog główny katalogu specyficznego dla użytkownika, w którym przechowywane są wszystkie konfiguracje i treści AVD.
Przed uruchomieniem urządzenia wirtualnego lub w ustawieniach użytkownika systemu operacyjnego możesz ustawić zmienną środowiskową w oknie terminala. np. w pliku .bashrc
w Linuksie.
Aby zatrzymać emulator Androida, zamknij jego okno.
Instalowanie aplikacji
Aplikację możesz zainstalować nie tylko za pomocą Androida Studio lub interfejsu emulatora, ale także na urządzeniu wirtualnym, używając narzędzia adb
.
Aby zainstalować, uruchomić i przetestować aplikację za pomocą adb
, wykonaj te ogólne czynności:
- Utwórz i spakuj aplikację do pliku APK zgodnie z opisem w sekcji Tworzenie i uruchamianie aplikacji.
- Uruchom emulator z wiersza poleceń w sposób opisany w poprzedniej sekcji, korzystając z wszelkich niezbędnych opcji uruchamiania.
- Zainstaluj aplikację za pomocą
adb
. - Uruchom i przetestuj aplikację za pomocą emulatora.
Gdy działa emulator, możesz używać konsoli emulatora do wydawania poleceń w razie potrzeby.
Aby odinstalować aplikację, zrób to tak jak na urządzeniu z Androidem.
Urządzenie wirtualne zachowuje aplikację i jej dane o stanie po ponownym uruchomieniu na partycji dysku danych użytkownika (userdata-qemu.img
). Aby wyczyścić te dane, uruchom emulator z opcją -wipe-data
lub wyczyść dane w narzędziu AVD Manager. Więcej informacji o partycji danych użytkownika i innym miejscu na dane znajdziesz w kolejnej sekcji.
Uwaga: narzędzie adb
postrzega urządzenie wirtualne jako rzeczywiste urządzenie fizyczne. Z tego powodu konieczne może być użycie flagi -d
w przypadku typowych poleceń adb
, takich jak install
. Flaga -d
umożliwia określenie, które z połączonych urządzeń ma być celem polecenia. Jeśli nie określisz -d
, emulator kieruje reklamy na pierwsze urządzenie na liście.
Omówienie domyślnych katalogów i plików
Emulator wykorzystuje powiązane pliki, z których najważniejsze są system AVD i katalogi danych. Podczas określania opcji wiersza poleceń warto znać strukturę katalogów i pliki emulatora, ale zwykle nie musisz zmieniać domyślnych katalogów ani plików.
Emulator Androida korzysta z hipernadzorcy QEMU (Szybki emulator). Początkowe wersje emulatora Androida używały QEMU 1 (złota rybka), a nowsze – QEMU 2 (ranchu).
Katalog systemu AVD
Katalog systemu zawiera obrazy systemu Android, których emulator wykorzystuje do symulowania systemu operacyjnego. W tym katalogu znajdują się przeznaczone tylko do odczytu pliki przeznaczone tylko do odczytu, które są współużytkowane przez wszystkie komponenty AVD tego samego typu, w tym na poziomie interfejsu API, architekturze procesora i wersji Androida. Domyślne lokalizacje to:
- macOS i Linux –
~/Library/Android/sdk/system-images/android-apiLevel/variant/arch/
- Microsoft Windows XP –
C:\Documents and Settings\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\
- Windows Vista –
C:\Users\user\Library\Android\sdk\system-images\android-apiLevel\variant\arch\
Gdzie:
apiLevel
to numeryczny poziom interfejsu API lub litera dla wersji testowej. Na przykładandroid-M
oznacza wersję testową Androida Marshmallow. Po wersji został on zmieniony na poziom API 23 oznaczony przezandroid-23
.variant
to nazwa odpowiadająca konkretnym funkcjom zaimplementowanym przez obraz systemu. Na przykładgoogle_apis
lubandroid-wear
.arch
to docelowa architektura procesora. Przykład:x86
.
Aby podać inny katalog systemowy na potrzeby AVD, użyj opcji -sysdir
.
Emulator odczytuje z katalogu systemowego te pliki:
Plik | Opis | Opcja określania innego pliku |
---|---|---|
kernel-qemu lub kernel-ranchu
|
Binarny obraz jądra systemu AVD. kernel-ranchu to najnowsza wersja emulatora QEMU 2.
|
-kernel
|
ramdisk.img
|
Obraz partycji rozruchu. Jest to podzbiór system.img wczytany przez jądro przed podłączeniem obrazu systemu. Zwykle zawiera on tylko kilka plików binarnych i skryptów inicjujących.
|
-ramdisk
|
system.img
|
Początkowa wersja obrazu systemu dostępna tylko do odczytu. W szczególności chodzi o partycję zawierającą biblioteki systemowe oraz dane odpowiadające poziomowi interfejsu API i wariantowi. | -system
|
userdata.img
|
Początkowa wersja partycji danych, wyświetlana w emulowanym systemie jako data/ i zawierająca wszystkie dostępne do zapisu dane dla AVD. Emulator używa tego pliku, gdy tworzysz nowy komponent AVD lub używasz opcji ‑wipe-data . Więcej informacji znajdziesz w opisie pliku userdata-qemu.img w następnej sekcji.
|
-initdata
-init-data
|
Katalog danych AVD
Katalog danych AVD, nazywany również katalogiem treści, jest przypisany do pojedynczej instancji AVD i zawiera wszystkie możliwe do modyfikacji dane dotyczące tego elementu.
Lokalizacja domyślna to ta, gdzie name
to nazwa AVD:
- macOS i Linux –
~/.android/avd/name.avd/
- Microsoft Windows XP –
C:\Documents and Settings\user\.android\name.avd\
- Windows Vista i nowszy –
C:\Users\user\.android\name.avd\
Aby wskazać inny katalog danych AVD, użyj opcji -datadir
.
Poniższa tabela zawiera listę najważniejszych plików w tym katalogu:
Plik | Opis | Opcja określania innego pliku |
---|---|---|
userdata-qemu.img
|
Zawartość partycji danych, wyświetlana w emulowanym systemie jako
Każda instancja urządzenia wirtualnego korzysta z obrazu danych użytkownika z możliwością zapisu do przechowywania danych dotyczących użytkownika i sesji. Służy on np. do przechowywania danych, ustawień, baz danych i plików zainstalowanych przez użytkownika. Każdy użytkownik ma inny katalog |
-data
|
cache.img
|
Obraz partycji pamięci podręcznej, który w emulowanym systemie wyświetla się jako cache/ . Jeśli utworzysz komponent AVD lub użyjesz opcji -wipe-data , pole jest puste. Zawiera tymczasowe pliki pobierania i wypełnia go menedżer pobierania, a czasami system. Przeglądarka używa jej np. do zapisywania pobranych stron internetowych i obrazów w pamięci podręcznej, gdy działa emulator. Gdy wyłączysz urządzenie wirtualne, plik zostanie usunięty. Możesz utrwalić plik przy użyciu opcji -cache .
|
-cache
|
sdcard.img
|
(Opcjonalnie) Obraz partycji karty SD, który umożliwia symulowanie działania karty SD na urządzeniu wirtualnym. Plik obrazu karty SD możesz utworzyć w AVD Manager lub za pomocą narzędzia
Do określenia pliku AVD w Menedżerze AVD możesz użyć automatycznie zarządzanego pliku karty SD lub pliku utworzonego za pomocą narzędzia
Gdy urządzenie wirtualne działa, możesz przeglądać i wysyłać pliki na symulowaną kartę SD oraz kopiować je i usuwać, korzystając z interfejsu emulatora lub narzędzia
Aby przed wczytaniem skopiować pliki na kartę SD, zamontuj plik obrazu jako urządzenie pętli, a następnie skopiuj pliki. Możesz też użyć narzędzia, takiego jak pakiet Emulator traktuje plik jako pulę bajtów, więc format karty SD nie ma znaczenia.
Opcja |
-sdcard
|
Wyświetl listę katalogów i plików używanych przez emulator
Lokalizacje plików możesz sprawdzić na 2 sposoby:
- Użyj opcji
-verbose
lub-debug init
, gdy uruchamiasz emulator z poziomu wiersza poleceń. Przyjrzyj się wynikom. - Aby wyświetlić katalog domyślny, użyj polecenia
emulator
-help-option
. Przykład:emulator -help-datadir
Use '-datadir <dir>' to specify a directory where writable image files will be searched. On this system, the default directory is: /Users/me/.android See '-help-disk-images' for more information about disk image files.
Opcje uruchamiania wiersza poleceń
W tej sekcji wymienione są opcje, które możesz podać w wierszu poleceń przy uruchamianiu emulatora.
Uwaga: emulator Androida jest stale rozwijany, aby zwiększyć jego niezawodność. Stan zgłoszonych problemów związanych z różnymi opcjami wiersza poleceń oraz zgłaszanie błędów znajdziesz w narzędziu do śledzenia problemów z Androidem.
Najczęściej używane opcje
W tabeli poniżej znajdziesz opcje uruchamiania z poziomu wiersza poleceń, których możesz używać częściej:
Opcja wiersza poleceń | Opis |
---|---|
Szybkie uruchamianie | |
-no-snapshot-load
|
Uruchamia „na zimno” i zapisuje stan emulatora przy zamykaniu. |
-no-snapshot-save
|
Jeśli to możliwe, przeprowadza szybkie uruchomienie, ale nie zapisuje stanu emulatora przy zamykaniu. |
-no-snapshot
|
Całkowicie wyłącza funkcję szybkiego uruchamiania i nie wczytuje ani nie zapisuje stanu emulatora. |
Sprzęt | |
-camera-back mode -camera-front mode
|
Ustawia tryb emulacji aparatu z tyłu lub z przodu. Spowoduje to zastąpienie wszystkich ustawień kamery w AVD.
Przykład: emulator @Nexus_5X_API_23 -camera-back webcam0 |
-webcam-list
|
Zawiera listę kamer internetowych na komputerze programistycznym, które można emulować. Przykład:emulator @Nexus_5X_API_23 -webcam-list List of web cameras connected to the computer: Camera 'webcam0' is connected to device 'webcam0' on channel 0 using pixel format 'UYVY' W tym przykładzie pierwszy Od wersji 25.2.4 narzędzi SDK nazwa AVD jest wymagana. |
Obrazy dysków i pamięć | |
-memory size
|
Określa rozmiar fizycznej pamięci RAM – od 128 do 4096 MB. Na przykład: emulator @Nexus_5X_API_23 -memory 2048 Ta wartość zastępuje ustawienie AVD. |
-sdcard filepath
|
Określa nazwę pliku i ścieżkę do pliku obrazu partycji karty SD. Na przykład:
emulator @Nexus_5X_API_23 -sdcard C:/sd/sdcard.img Jeśli plik się nie znajdzie, emulator się uruchomi, ale bez karty SD. Polecenie zwraca ostrzeżenie Brak obrazu karty SD.
Jeśli nie określisz tej opcji, domyślną wartością w katalogu danych będzie |
-wipe-data
|
Powoduje usunięcie danych użytkownika i skopiowanie danych z początkowego pliku danych. Ta opcja powoduje wyczyszczenie danych urządzenia wirtualnego i przywrócenie ich do stanu z pierwszego zdefiniowania. Wszystkie zainstalowane aplikacje i ustawienia zostaną usunięte. Na przykład:
emulator @Nexus_5X_API_23 -wipe-data
Domyślnie plik danych użytkownika to |
Debuguj | |
-debug tags
|
Włącza lub wyłącza wyświetlanie komunikatów debugowania w przypadku co najmniej jednego tagu.
Kolejne tagi rozdziel spacją, przecinkiem lub kolumną. Na przykład:
$ emulator @Nexus_5X_API_23 -debug init,metrics Aby wyłączyć tag, umieść przed nim łącznik (-). Na przykład przykład poniżej pokazuje wszystkie komunikaty debugowania oprócz tych związanych z gniazdami sieciowymi i wskaźnikami:
Aby skorzystać z listy tagów i opisów, użyj opcji
emulator -help-debug-tags
Domyślne tagi debugowania możesz zdefiniować w zmiennej środowiskowej
ANDROID_VERBOSE=socket,gles Jest to odpowiednik użycia:
lub
|
-debug-tag -debug-no-tag
|
Włącza określony typ komunikatu debugowania. Aby wyłączyć typ wiadomości debugowania, użyj formularza no . Na przykład:
emulator @Nexus_5X_API_23 -debug-all -debug-no-metrics
Listę tagów znajdziesz w poleceniu |
-logcat logtags
|
Włącza wyświetlanie komunikatów Logcat dla co najmniej jednego tagu i zapisuje je w oknie terminala. Na przykład to polecenie włącza komunikaty o błędach ze wszystkich komponentów:
emulator @Nexus_5X_API_23 -logcat *:e
Ten przykład zawiera komunikaty komponentu GSM z informacjami na poziomie dziennika:
emulator @Nexus_5X_API_23 -logcat '*:s GSM:i'
Jeśli nie podasz opcji Więcej informacji o Logcat i |
-show-kernel
|
Wyświetla komunikaty debugowania jądra w oknie terminala. Na przykład:
emulator @Nexus_5X_API_23 -show-kernel Jednym z zastosowań tej opcji jest sprawdzenie, czy proces uruchamiania działa prawidłowo. |
-verbose
|
Drukuje komunikaty inicjowania emulatora do okna terminala. Na przykład:
emulator @Nexus_5X_API_23 -verbose
Pokazuje, które pliki i ustawienia są wybierane podczas uruchamiania urządzenia wirtualnego zdefiniowanego w AVD. Ta opcja działa tak samo jak określenie |
Sieć | |
-dns-server servers
|
Korzysta z określonych serwerów DNS. servers to rozdzielona przecinkami lista maksymalnie 4 nazw serwerów DNS lub adresów IP. Na przykład: emulator @Nexus_5X_API_23 -dns-server 192.0.2.0,
Domyślnie emulator próbuje wykryć używane serwery DNS i konfiguruje specjalne aliasy w emulowanej sieci zapory sieciowej, aby umożliwić systemowi Android bezpośrednie łączenie się z serwerami. Użyj opcji |
-http-proxy proxy
|
Wszystkie połączenia TCP przez określony serwer proxy HTTP/HTTPS. Jeśli emulator musi łączyć się z internetem przez serwer proxy, możesz skonfigurować odpowiednie przekierowanie, korzystając z tej opcji lub zmiennej środowiskowej http_proxy . Na przykład:
emulator @Nexus_5X_API_23 -http-proxy myserver:1981
Prefiks
Jeśli ta opcja nie zostanie podana, emulator wyszukuje zmienną środowiskową |
-netdelay delay
|
Ustawia emulację opóźnienia sieci na jedną z tych wartości
Przykład: emulator @Nexus_5X_API_23 -netdelay gsm
Emulator obsługuje ograniczanie przepustowości sieci oraz wyższe opóźnienia połączenia.
Możesz go zdefiniować w konfiguracji karnacji lub za pomocą opcji |
-netfast
|
Wyłącza ograniczanie przepustowości sieci. Na przykład:
emulator @Nexus_5X_API_23 -netfast
Ta opcja działa tak samo jak określenie |
-netspeed speed
|
Ustawia emulację szybkości sieci. Określa maksymalną szybkość przesyłania i pobierania w sieci, korzystając z jednej z tych wartości
Przykład: emulator @Nexus_5X_API_23 -netspeed edge
Emulator obsługuje ograniczanie przepustowości sieci oraz wyższe opóźnienia połączenia.
Możesz go zdefiniować w konfiguracji karnacji lub za pomocą opcji |
-port port
|
Ustawia numer portu TCP, który jest używany przez konsolę i adb . Na przykład:
emulator @Nexus_5X_API_23 -port 5556
Wartość domyślna to 5554 w przypadku pierwszej instancji urządzenia wirtualnego działającej na Twoim maszynie. Urządzenie wirtualne zajmuje zwykle parę sąsiadujących portów: port konsoli i port
Przypisania portów są często takie same jak określenie Opcja
Pamiętaj, że jeśli wartość |
-ports
|
Określa porty TCP używane przez konsolę i adb . Na przykład:
emulator @Nexus_5X_API_23 -ports 5556,5559
Prawidłowy zakres portów to od 5554 do 5682, co pozwala na używanie 64 równoczesnych urządzeń wirtualnych. Opcja
Zamiast tego zalecamy używanie opcji
Więcej informacji o konfigurowaniu konsoli i portów |
-tcpdump filepath
|
Przechwytuje pakiety sieciowe i zapisuje je w pliku. Na przykład:
emulator @Nexus_5X_API_23 -tcpdump /path/dumpfile.cap Użyj tej opcji, aby rozpocząć przechwytywanie wszystkich pakietów sieciowych wysyłanych przez wirtualną sieć LAN Ethernet emulatora. Następnie możesz go przeanalizować za pomocą narzędzia takiego jak Wireshark. Pamiętaj, że ta opcja wychwytuje wszystkie pakiety Ethernet i nie jest ograniczona do połączeń TCP. |
System | |
-accel mode
|
Konfiguruje akcelerację maszyny wirtualnej emulatora. Na przykład:
emulator @Nexus_5X_API_23 -accel auto Emulacja przyspieszona działa tylko w przypadku obrazów systemowych x86 i x86_64. W systemie Linux korzysta z KVM. W systemach Windows i macOS korzysta z procesora Intel i sterownika Intel HAXM. Ta opcja jest ignorowana, jeśli nie emulujesz urządzeń x86 ani x86_64.
Prawidłowe wartości pola
Więcej informacji znajdziesz w artykule o konfigurowaniu akceleracji sprzętowej emulatora Androida. |
-accel-check
|
Sprawdza, czy jest zainstalowany hipernadzorca wymagany do akceleracji maszyny wirtualnej emulatora (HAXM lub KVM). Na przykład:
emulator -accel-check Więcej informacji znajdziesz w artykule Sprawdzanie, czy zainstalowany jest hipernadzorca. |
-engine engine
|
Określa mechanizm emulatora:
Na przykład:
emulator @Nexus_5X_API_23 -engine auto
Funkcja automatycznego wykrywania powinna wybrać wartość, która zapewnia największą wydajność podczas emulacji konkretnego AVD. Używaj opcji |
-gpu mode
|
Wybiera tryb emulacji GPU. Na przykład:
emulator @Nexus_5X_API_23 -gpu swiftshader_indirect Więcej informacji znajdziesz w artykule Konfigurowanie akceleracji graficznej. |
-no-accel
|
Wyłącza akcelerator emulatora maszyny wirtualnej przy korzystaniu z obrazu systemu x86 lub x86_64. Przydaje się tylko do debugowania i działa tak samo jak określenie atrybutu -accel
off . Na przykład:
emulator @Nexus_5X_API_23 -no-accel Więcej informacji znajdziesz w artykule o konfigurowaniu akceleracji sprzętowej emulatora Androida. |
-nojni
-no-jni
|
Wyłącza rozszerzone testy interfejsu natywnego Java (JNI) w środowisku wykonawczym Android Dalvik lub ART. Na przykład:
emulator @Nexus_5X_API_23 -nojni Po uruchomieniu urządzenia wirtualnego rozszerzone testy JNI są domyślnie włączone. Więcej informacji znajdziesz w artykule ze wskazówkami dotyczącymi JNI. |
-selinux {disabled|permissive}
|
Ustawia moduł zabezpieczeń Security- Enhanced Linux (SELinux) na tryb disabled lub permissive w systemie operacyjnym Linux. Na przykład:
me-linux$ emulator @Nexus_5X_API_23 -selinux permissive
Domyślnie SELinux działa w trybie |
-timezone timezone
|
Ustawia strefę czasową urządzenia wirtualnego na emulator @Nexus_5X_API_23 -timezone Europe/Paris
Domyślnie emulator używa strefy czasowej komputera, którego używasz do programowania. Użyj tej opcji, aby określić inną strefę czasową lub jeśli automatyczne wykrywanie nie działa prawidłowo. Wartość
Podana strefa czasowa musi znajdować się w bazie danych Zoneinfo. |
-version
|
Wyświetla numer wersji emulatora. Na przykład:
emulator @Nexus_5X_API_23 -version lub
emulator -version |
Interfejs użytkownika | |
-no-boot-anim
|
Wyłącza animację podczas uruchamiania emulatora, aby przyspieszyć uruchamianie.
Na przykład:
emulator @Nexus_5X_API_23 -no-boot-anim Na wolniejszych komputerach ta opcja może znacznie przyspieszyć sekwencję uruchamiania. |
-screen mode
|
Ustawia tryb emulacji ekranu dotykowego. Na przykład:
emulator @Nexus_5X_API_23 -screen no-touch
|
Opcje zaawansowane
Podane w poniższej tabeli opcje uruchamiania wiersza poleceń są dostępne, ale przeciętny deweloper aplikacji nie używa ich często.
W opisach katalog roboczy to bieżący katalog w terminalu, w którym wpisujesz polecenia. Informacje o katalogu i katalogu danych systemu AVD oraz o plikach w nich znajdziesz w sekcji poświęconej domyślnym katalogom i plikom.
Niektóre z nich są odpowiednie dla zewnętrznych deweloperów aplikacji, a inne są używane głównie przez deweloperów platform. Deweloperzy aplikacji tworzą aplikacje na Androida i uruchamiają je na określonych urządzeniach. Programiści platformy pracują na systemie Android i uruchamiają go w emulatorze bez wstępnie utworzonego AVD.
Opcja zaawansowana | Krótki opis |
---|---|
-bootchart timeout
|
Włącza schematy rozruchowe z czasem oczekiwania w sekundach. Niektóre obrazy systemu Android mają zmodyfikowany system inicjujący, który jest zintegrowany z programem rozruchowym. Za pomocą tej opcji możesz przekazać systemowi czas oczekiwania na uruchomienie. Jeśli w systemie inicjującym nie jest włączony program rozruchowy, opcja nie przyniesie żadnego efektu. Ta opcja jest przydatna głównie dla deweloperów platform, a nie zewnętrznych deweloperów aplikacji. Na przykład: emulator @Nexus_5X_API_23 -bootchart 120 |
-cache filepath
|
Określa plik obrazu partycji pamięci podręcznej. Zawiera nazwę pliku i ścieżkę bezwzględną lub ścieżkę względną do katalogu danych, aby skonfigurować trwały plik pamięci podręcznej. Jeśli plik nie istnieje, emulator utworzy go jako pusty plik. Na przykład: emulator @Nexus_5X_API_23 -cache ~/.android/avd/Nexus_5X_API_23.avd/cache_persistent.img Jeśli nie użyjesz tej opcji, domyślnie będzie to plik tymczasowy o nazwie |
-cache-size size
|
Ustawia rozmiar partycji pamięci podręcznej w MB. Na przykład: emulator @Nexus_5X_API_23 -cache-size 1000 Jeśli nie określisz tej opcji, domyślnie przyjęta zostanie wartość 66 MB. Zwykle większość deweloperów aplikacji nie potrzebuje tej opcji, chyba że pobiera bardzo duże pliki, które są większe niż domyślna pamięć podręczna. Więcej informacji o pliku pamięci podręcznej znajdziesz w artykule Katalog danych AVD. |
-data filepath
|
Ustawia plik obrazu partycji danych użytkownika. Zawiera nazwę pliku i ścieżkę bezwzględną lub względną do katalogu roboczego, aby skonfigurować trwały plik danych użytkownika. Jeśli taki plik nie istnieje, emulator tworzy obraz z domyślnego pliku Na przykład: emulator @Nexus_5X_API_23 -data ~/.android/avd/Nexus_5X_API_23.avd/userdata-test.img Jeśli nie użyjesz tej opcji, domyślną nazwą będzie plik o nazwie |
-datadir dir
|
Określa katalog danych przy użyciu ścieżki bezwzględnej. Więcej informacji znajdziesz w artykule Katalog danych AVD. Na przykład: emulator @Nexus_5X_API_23 -datadir ~/.android/avd/Nexus_5X_API_23.avd/mytest |
-force-32bit
|
Używa 32-bitowego emulatora na platformach 64-bitowych. Czasami ta opcja jest przydatna do testowania lub debugowania. Występował na przykład problem polegający na tym, że emulator czasem nie uruchamiał się w 64-bitowym systemie Windows, a w systemie 32-bitowym. Ta opcja była pomocna przy przeprowadzaniu porównań w celu debugowania problemu. Oto przykład: emulator @Nexus_5X_API_23 -force-32bit |
-help-disk-images
|
Uzyskiwanie pomocy dotyczącej obrazów dysków. Ta opcja dostarcza informacji zarówno dla deweloperów aplikacji, jak i platform. Na przykład: emulator -help-disk-images |
-help-char-devices
|
Uzyskiwanie pomocy dotyczącej specyfikacji znaków emulator -help-char-devices |
-help-sdk-images
|
Uzyskiwanie pomocy dotyczącej obrazów dysków przydatnych dla deweloperów aplikacji. Ta opcja umożliwia uzyskanie informacji o lokalizacji plików graficznych w przypadku komponentu AVD utworzonego za pomocą narzędzi SDK. Na przykład: emulator -help-sdk-images |
-help-build-images
|
Uzyskiwanie pomocy dotyczącej obrazów dysków istotnych dla programistów platform. Na przykład: emulator -help-build-images |
-initdata filepath -init-data
filepath
|
Określa początkową wersję partycji danych. Po wyczyszczeniu danych użytkownika emulator kopiuje zawartość określonego pliku do danych użytkownika (domyślnie jest to plik Na przykład: emulator @Nexus_5X_API_23 -initdata ~/Library/Android/sdk/system-images/android-23/ google_apis/x86/userdata-test.img Jeśli nie określisz ścieżki, plik zostanie umieszczony w katalogu systemowym. Więcej informacji znajdziesz w katalogu systemu AVD. |
-kernel filepath
|
Korzysta z określonego emulowanego jądra. Jeśli nie określisz ścieżki, emulator będzie szukał w katalogu systemowym. Aby wyświetlić komunikaty debugowania jądra, użyj opcji‑show‑kernel .
Na przykład: emulator @Nexus_5X_API_23 -kernel ~/Library/Android/sdk/system-images/android-23/ google_apis/x86/kernel-test.img -show-kernel Jeśli nie określisz tej opcji, domyślną wartością będzie |
-noaudio
-no-audio
|
Wyłącza obsługę dźwięku przez to urządzenie wirtualne. Niektóre komputery z systemem Linux i Windows mają uszkodzone sterowniki audio, które powodują inne objawy, na przykład uniemożliwiają uruchomienie emulatora. W takiej sytuacji skorzystaj z tej opcji, aby rozwiązać problem. Aby zmienić backend audio, możesz też użyć zmiennej środowiskowej Na przykład: emulator @Nexus_5X_API_23 -noaudio |
-nocache
-no-cache
|
Uruchamia emulator bez partycji pamięci podręcznej. Jeśli nie użyjesz tej opcji, domyślnie będzie to plik tymczasowy o nazwie Na przykład: emulator @Nexus_5X_API_23 -nocache |
-no-snapshot
|
Blokuje operacje automatycznego wczytywania i zapisywania, co powoduje, że emulator wykonuje pełną sekwencję rozruchu, a po zamknięciu traci swój stan. Zastępuje opcję Na przykład: emulator @Nexus_5X_API_23 -no-snapshot |
-no-snapshot-load
|
Uniemożliwia emulatorowi wczytywanie stanu AVD z pamięci zrzutu. Wykonuje pełne uruchomienie. Na przykład: emulator @Nexus_5X_API_23 -no-snapshot-load |
-no-snapshot-save
|
Zapobiega to zapisywaniu stanu AVD w pamięci zrzutu przez emulator przy zamykaniu, co oznacza, że wszystkie zmiany zostaną utracone. Na przykład: emulator @Nexus_5X_API_23 -no-snapshot-save |
-no-snapshot-update-time
|
Nie próbuje skorygować czasu AVD od razu po przywróceniu zrzutu. Ta opcja może być przydatna podczas testowania, ponieważ pozwala uniknąć nagłych skoków w czasie. Aktualne informacje o czasie są wysyłane do AVD co około 15 sekund. Na przykład: emulator @Nexus_5X_API_23 -no-snapshot-update-time |
-no-snapstorage
|
Uruchamia emulator bez podłączania pliku w celu przechowywania lub wczytywania zrzutów stanu, wymuszając pełny rozruch i wyłączając funkcję zrzutu stanu. Ta opcja zastępuje opcje Na przykład: emulator @Nexus_5X_API_23 -no-snapstorage |
-no-window
|
Wyłącza graficzne wyświetlanie okna w emulatorze. Ta opcja jest przydatna, gdy emulator działa na serwerach, które nie mają wyświetlacza. Emulator możesz otworzyć przez emulator @Nexus_5X_API_23 -no-window |
-partition-size size
|
Określa rozmiar systemowej partycji danych w MB. Na przykład: emulator @Nexus_5X_API_23 -partition-size 1024 |
-prop name=value
|
Ustawia właściwość systemu Android w emulatorze podczas uruchamiania.
emulator @Nexus_5X_API_23 -prop qemu.name=value -prop qemu.abc=xyz |
-qemu args
|
Przekazuje argumenty do oprogramowania emulatora QEMU. Pamiętaj, że QEMU 1 i QEMU 2 mogą używać różnych argumentów. Gdy używasz tej opcji, upewnij się, że jest to ostatnia określona opcja, ponieważ wszystkie kolejne opcje zostaną zinterpretowane jako opcje związane z QEMU. Ta opcja jest dość zaawansowana i powinna być używana tylko przez programistów, którzy bardzo znają funkcję QEMU oraz emulację Androida. |
-qemu -h
|
Wyświetla pomoc na temat: emulator -qemu -h |
-ramdisk filepath
|
Określa obraz rozruchowy Ramdisk. Określa nazwę pliku i ścieżkę bezwzględną lub ścieżkę względną do katalogu roboczego. Na przykład: emulator @Nexus_5X_API_23 -ramdisk ~/Library/Android/sdk/system-images/android-23/ google_apis/x86/ramdisk-test.img Jeśli nie używasz tej opcji, domyślną wartością jest plik |
-report-console socket
|
Raportuje port konsoli zdalnej firmie zewnętrznej przed rozpoczęciem emulacji. Może być przydatna w przypadku automatycznego skryptu testowania.
Aby uzyskać więcej informacji, użyj opcji |
-shell
|
Tworzy główną konsolę powłoki na bieżącym terminalu. Ta opcja różni się od polecenia
Na przykład: emulator @Nexus_5X_API_23 -shell |
-snapshot name
|
Określa nazwę zrzutu w pliku pamięci masowej na potrzeby automatycznego uruchamiania i zapisywania operacji. Zamiast wykonywać pełną sekwencję rozruchu, emulator może wznowić wykonywanie z wcześniejszego zrzutu stanu, co zwykle jest znacznie szybsze. Jeśli podasz tę opcję, emulator wczytuje zrzut o tej nazwie z obrazu zrzutu i zapisuje go z powrotem pod tą samą nazwą przy zamykaniu. Jeśli nie użyjesz tej opcji, domyślnie będzie to pełna sekwencja rozruchu. Jeśli określony zrzut nie istnieje, emulator wykonuje sekwencję pełnego rozruchu i zapisuje operację. Informacje o określaniu plików do przechowywania zrzutów oraz pliku domyślnego znajdziesz w sekcji emulator @Nexus_5X_API_23 -snapshot snapshot2 Pamiętaj, że podczas wczytywania zrzutu cała zawartość systemu, dane użytkownika i obrazy kart SD są zastępowane zawartością, która była przechowywana podczas tworzenia zrzutu. Jeśli nie zapiszesz tych informacji w innym zrzucie, wszystkie zmiany wprowadzone od tego momentu zostaną utracone. Zrzut możesz też utworzyć w konsoli emulatora za pomocą polecenia |
-snapshot-list
|
Wyświetla listę dostępnych zrzutów. To polecenie wyświetla tabelę zrzutów zapisanych w pliku pamięci masowej, na którym został uruchomiony emulator, a następnie zamykane jest. Jeśli podasz także Na przykład: emulator @Nexus_5X_API_23 -snapshot-list -snapstorage ~/.android/avd/Nexus_5X_API_23.avd/snapshots-test.img Możesz użyć wartości kolumn ID i TAG w danych wyjściowych jako argumentów dla opcji |
-snapstorage filepath
|
Określa plik repozytorium, który zawiera wszystkie zrzuty stanu. W tym pliku zapisywane są wszystkie zrzuty utworzone podczas wykonywania. Podczas działania emulatora można przywrócić tylko zrzuty z tego pliku. Na przykład: emulator @Nexus_5X_API_23 -snapstorage ~/.android/avd/Nexus_5X_API_23.avd/snapshots-test.img Jeśli nie określisz tej opcji, domyślną wartością w katalogu danych będzie |
-sysdir dir
|
Określa katalog systemowy przy użyciu ścieżki bezwzględnej. Więcej informacji znajdziesz w katalogu systemu AVD. Na przykład: emulator @Nexus_5X_API_23 -sysdir ~/Library/Android/sdk/system-images/android-23/ google_apis/x86/test |
-system filepath
|
Określa początkowy plik systemowy. Zawiera nazwę pliku i ścieżkę bezwzględną lub ścieżkę względną do katalogu roboczego. Na przykład: emulator @Nexus_5X_API_23 -system ~/Library/Android/sdk/system-images/android-23/ google_apis/x86/system-test.img Jeśli nie używasz tej opcji, domyślną wartością jest plik |
-use-system-libs
|
W Linuksie zamiast wersji pakietu z emulatorem używany jest system Na przykład: me-linux$ emulator @Nexus_5X_API_23 -use-system-libs |
-writable-system
|
Ta opcja umożliwia uzyskanie obrazu systemu z możliwością zapisu podczas sesji emulacji. Aby to zrobić:
Użycie tej flagi powoduje utworzenie tymczasowej kopii obrazu systemu. Może ona mieć bardzo duży rozmiar, do kilkuset MB, ale zostanie zniszczona po zamknięciu emulatora. |
Opcje wycofane
Te opcje wiersza poleceń zostały wycofane:
-audio-in
-audio-out
-charmap
-code-profile
-cpu-delay
-dpi-device
-dynamic_skin
-enable-kvm
-gps
-image
-keyset
-help-keys
-help-keyset-file
-nand-limits
-noskin
-no-skin
-onion
-onion-alpha
-onion-rotation
-radio
-ranchu
-raw-keys
-scale
-shared-net-id
-shell-serial
-skin
-skindir
-trace
-useaudio
Pomoc dotycząca opcji wiersza poleceń
W tej sekcji dowiesz się, jak uzyskać pomoc dotyczącą opcji wiersza poleceń. Zawiera on bardziej szczegółowe informacje o najczęściej używanych opcjach wiersza poleceń emulatora, które są dostępne po uruchomieniu emulatora.
Wyświetlanie listy wszystkich opcji emulatora
Aby wydrukować listę wszystkich opcji emulatora w tym krótki opis, wpisz to polecenie:
emulator -help
Uzyskiwanie szczegółowej pomocy dotyczącej konkretnej opcji
Aby wydrukować pomoc dotyczącą określonej opcji uruchamiania, wpisz następujące polecenie:
emulator -help-option
Na przykład:
emulator -help-netspeed
Ta pomoc jest bardziej szczegółowa niż opis podany w opcji -help
.
Szczegółowa pomoc dotycząca wszystkich opcji
Aby uzyskać szczegółową pomoc dotyczącą wszystkich opcji emulatora, wpisz to polecenie:
emulator -help-all
Wyświetlenie listy zmiennych środowiskowych emulatora
Aby uzyskać listę zmiennych środowiskowych emulatora, wpisz to polecenie:
emulator -help-environment
Zmienne środowiskowe możesz ustawić w oknie terminala przed uruchomieniem urządzenia wirtualnego lub skonfigurować je w ustawieniach użytkownika w systemie operacyjnym. Możesz go na przykład ustawić w pliku .bashrc
na komputerze z Linuksem.
Wyświetl listę tagów debugowania
Aby wydrukować listę tagów dla opcji -debug
, wpisz to polecenie:
emulator -help-debug-tags
Opcje -debug
pozwalają włączać i wyłączać komunikaty debugowania pochodzące z konkretnych komponentów emulatora (zgodnie z ustawieniami tagów).