Zmienne środowiskowe

Działanie Android Studio i narzędzi wiersza poleceń możesz skonfigurować, ustawiając zmiennych środowiskowych. Jedną z najbardziej przydatnych zmiennych środowiskowych do skonfigurowania jest ANDROID_HOME, z których korzysta wiele narzędzi, określić katalog instalacyjny Android SDK. Aby uruchamiać narzędzia z poziomu wiersza poleceń bez podawania pełnej ścieżki do pliku wykonywalnego: Ustaw polecenie zmienna środowiskowa ścieżki wyszukiwania do uwzględnienia ANDROID_HOME/tools, ANDROID_HOME/tools/bin i ANDROID_HOME/platform-tools

Ustawianie zmiennych środowiskowych

W przykładach poniżej pokazujemy, jak ustawić zmienne środowiskowe w oknie terminala oraz skrypt powłoki przeznaczony dla różnych systemów operacyjnych. Zmienne ustawienia w oknach terminala tylko gdy okno jest otwarte. W systemach macOS i Linux przy każdym uruchomieniu nowej powłoki zmienna zostały skonfigurowane w powłoce skryptów inicjujących. W systemie Windows można: w ustawieniach systemowych.

Windows:w oknie terminala wpisz:

set HTTP_PROXY=myserver:1981

Możesz też dodać go w interfejsie systemu Windows. Zapoznaj się z dokumentacją dotyczącą używanej wersji systemu Windows aby dowiedzieć się, jak to zrobić.

macOS i Linux: dokładna metoda ustawiania zmiennych środowiskowych zależy od której powłoki używasz. Aby określić typ powłoki, która jest uruchomiona, wpisz:

echo $0

W powłokach, takich jak Gnu Bash lub Zsh, zmienne są ustawiane w taki sposób: składnia:

export VARIABLE_NAME=<new-value>

W innych powłokach, takich jak TCSH, zmienne ustawia się za pomocą metody ta składnia:

setenv VARIABLE_NAME <new-value>

Te polecenia można dodać do skryptu inicjowania powłoki, aby ustawić zmienne za każdym razem, gdy czy została uruchomiona nowa instancja powłoki.

Lokalizacja skryptu inicjowania powłoki zależy od używanej powłoki. W przypadku Gunu Bash lokalizacją może być ~/.bash_profile. Dla: Zsh, lokalizacją może być ~/.zprofile. W przypadku zasad TCSH lokalizacja może być ~/.cshrc Sprawdź zapoznaj się z dokumentacją używanej powłoki.

Możesz też zaktualizować zmienną środowiskową PATH, aby uwzględnić lokalizacje narzędzia.

W przypadku Gnu Bash lub Zsh:

export ANDROID_HOME=~/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools
  

W przypadku TCSH:

setenv ANDROID_HOME ~/Library/Android/sdk
setenv PATH $PATH\:$ANDROID_HOME/tools\:$ANDROID_HOME/tools/bin\:$ANDROID_HOME/platform-tools
  

Dokumentacja zmiennych

W tabeli poniżej opisujemy często używane zmienne środowiskowe w narzędziach Android SDK.

Tabela 1. Zmienne środowiskowe

Zmienne środowiskowe pakietu Android SDK
ANDROID_HOME Ustawia ścieżkę do katalogu instalacyjnego pakietu SDK. Po skonfigurowaniu Wartość zwykle się nie zmienia i może być udostępniana przez wielu użytkowników na tym samym komputerze. ANDROID_SDK_ROOT, który wskazuje również katalog instalacyjny pakietu SDK, został wycofany. Jeśli nadal z niego będziesz korzystać, Android Studio i wtyczka Android do obsługi Gradle należy sprawdzić, czy stare i nowe zmienne są spójne.
ANDROID_USER_HOME Ustawia ścieżkę do katalogu ustawień użytkownika w przypadku narzędzi, które są częścią pakietu Android SDK. Domyślna wartość to $HOME/.android/.

Niektóre starsze narzędzia, takie jak Android Studio 4.3 i starsze wersje, nie odczytują ANDROID_USER_HOME Aby zastąpić lokalizację ustawień użytkownika w przypadku starszych narzędzi, ustaw ANDROID_SDK_HOME do katalogu nadrzędnego, w którym ma być .android katalog, w którym zostanie utworzony.

REPO_OS_OVERRIDE Ustaw tę zmienną na windows, macosx lub linux, gdy używasz sdkmanager .
Zmienne środowiskowe konfiguracji Android Studio
Zmienne konfiguracji Android Studio zawierają ustawienia, które dostosowują lokalizację plików konfiguracji i pakietu JDK. Po uruchomieniu Android Studio sprawdza te zmienne Ustawienia. Więcej informacji: Skonfiguruj Android Studio.
STUDIO_VM_OPTIONS Określa lokalizację pliku studio.vmoptions. Ten plik zawiera ustawienia, które wpływają na charakterystykę wydajności komponentu Java HotSpot maszynie wirtualnej. Ten plik można też otworzyć w Android Studio. Zobacz Dostosuj opcje maszyny wirtualnej
STUDIO_PROPERTIES Ustawia lokalizację: idea.properties . Ten plik umożliwia dostosowanie właściwości IDE Android Studio, takich jak ścieżka do zainstalowane wtyczki oraz maksymalny rozmiar pliku obsługiwany przez IDE. Zobacz Dostosuj właściwości IDE.
STUDIO_JDK Ustawia lokalizację pakietu JDK, w którym działa Android Studio. Po uruchomieniu IDE sprawdza STUDIO_JDK, JDK_HOME i JAVA_HOME zmiennych środowiskowych w tej kolejności.
STUDIO_GRADLE_JDK Ustawia lokalizację pliku JDK używanego w Android Studio do uruchamiania demona Gradle. Gdy uruchamia IDE, najpierw sprawdza STUDIO_GRADLE_JDK. Jeśli Nie zdefiniowano STUDIO_GRADLE_JDK, IDE używa wartości ustawionej w ustawienia struktury projektu.
Zmienne środowiskowe emulatora
Domyślnie emulator przechowuje pliki konfiguracji w folderze $HOME/.android/ i dane AVD poniżej $HOME/.android/avd/. Dostępne opcje zastępując wartości domyślne, ustawiając poniższe zmienne środowiskowe. Polecenie emulator -avd <avd_name> przeszukuje avd w kolejności, w jakiej są w $ANDROID_AVD_HOME, $ANDROID_USER_HOME/avd/ i $HOME/.android/avd/.

Aby uzyskać pomoc dotyczącą zmiennej środowiskowej emulatora, wpisz emulator -help-environment w wierszu poleceń. Informacje na temat: Opcje wiersza poleceń emulator – patrz Uruchom emulator z wiersza poleceń.

ANDROID_EMULATOR_HOME Ustawia ścieżkę do konfiguracji emulatora dla konkretnego użytkownika katalogu. Domyślna wartość to $ANDROID_USER_HOME.

Starsze narzędzia, takie jak Android Studio 4.3 i starsze wersje, nie odczytują ANDROID_USER_HOME W przypadku tych narzędzi domyślną wartością jest $ANDROID_SDK_HOME/.android

ANDROID_AVD_HOME Ustawia ścieżkę do katalogu zawierającego wszystkie informacje o AVD które składają się głównie z bardzo dużych obrazów dysków. Domyślna lokalizacja to $ANDROID_EMULATOR_HOME/avd/ Możesz podać nową lokalizację, jeśli w lokalizacji domyślnej jest mało miejsca na dysku.
Emulator Androida wysyła zapytania o te zmienne środowiskowe po uruchomieniu:
ANDROID_LOG_TAGS Zobacz ANDROID_LOG_TAGS.
HTTP_PROXY

Zawiera serwer proxy HTTP/HTTPS dla globalnego serwera proxy HTTP. Używa separatora dwukropka (:) między hostem a portem. Dla: przykład: set HTTP_PROXY=myserver:1981.

To jest to samo co określenie -http-proxy proxy podczas uruchamiania emulatora z poziomu wiersza poleceń.

ANDROID_VERBOSE Zobacz ANDROID_VERBOSE.
ANDROID_HOME Zobacz ANDROID_HOME.
ANDROID_EMULATOR_USE_SYSTEM_LIBS Zawiera wartość 0 (domyślna) lub 1. Wartość 1 oznacza Używany jest plik libstdc++.so zamiast pliku dołączonego do emulatora. Ustaw tę zmienną środowiskową tylko wtedy, gdy emulator nie uruchamia się w systemie Linux z powodu problemu z biblioteką systemową. Na przykład niektóre biblioteki sterowników Radeon GL dla systemu Linux wymagają nowszego pliku libstdc++.so.
Dźwięk w szybkim emulatorze (QEMU)
QEMU_AUDIO_DRV QEMU_AUDIO_OUT_DRV QEMU_AUDIO_IN_DRV W Linuksie możesz zmienić domyślny dźwięk backendu emulatora przez ustawienie zmiennej środowiskowej QEMU_AUDIO_DRV na jedną z tych wartości:
  • alsa: używaj backendu zaawansowanej architektury dźwięku (ALSA) systemu Linux
  • esd: użyj backendu Enlightened Sound Daemon (EsounD)
  • sdl: korzystaj z backendu audio Simple DirectMedia Layer (SDL) (bez wejścia audio) obsługiwane)
  • oss:: używaj backendu systemu Open Sound System (OSS)
  • none:: nie obsługuje dźwięku
set QEMU_AUDIO_DRV=alsa

Możesz też użyć osobnych backendów dla wejścia audio i wyjścia audio, wybierając Wartości QEMU dla kolumn QEMU_AUDIO_OUT_DRV i QEMU_AUDIO_IN_DRV zmienne środowiskowe:

set QEMU_AUDIO_OUT=esd
set QEMU_AUDIO_IN=oss

Jeśli chcesz wyłączyć obsługę dźwięku, użyj opcji emulator -no-audio lub ustaw QEMU_AUDIO_DRV na none. Wyłączenie dźwięku może być konieczne w tych sytuacjach:

  • W rzadkich przypadkach sterowniki dźwięku mogą powodować restartowanie systemu Windows, gdy emulator jest uruchomiony.
  • Na niektórych komputerach z systemem Linux emulator może zawiesić się przy uruchomieniu z włączoną obsługą dźwięku.
zmienne środowiskowe adb
ANDROID_SERIAL Za pomocą tej zmiennej podaj numer seryjny emulatora, np. jako emulator-5555, do polecenia adb. Jeśli ustawisz tę zmienną, ale użyjesz funkcji -s w wierszu poleceń, wpisz numer seryjny, wartość w argumencie ANDROID_SERIAL.

W przykładzie poniżej ustawiamy ANDROID_SERIAL i wywołania adb install helloworld.apk, a następnie instaluje aplikację na Androida. na emulator-5555.

set ANDROID_SERIAL=emulator-555
adb install helloWorld.apk
zmienne środowiskowe adb logcat
ANDROID_LOG_TAGS Użyj tej zmiennej środowiskowej, aby ustawić filtr domyślny , gdy uruchamiasz logcat z komputera programisty. Na przykład:
set ANDROID_LOG_TAGS=ActivityManager:I MyApp:D *:.

To jest to samo co określenie -logcat tags przy uruchamianiu emulatora z wiersza poleceń.

Zobacz Wyniki filtrowania .

ADB_TRACE Zawiera rozdzieloną przecinkami listę danych debugowania do zapisania. Możliwe wartości: all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport i jdwp.

Aby wyświetlić logi adb dla klientów adb i serwera adb, ustaw ADB_TRACE do all, a następnie wywołaj polecenie adb logcat w następujący sposób:

set ADB_TRACE=all
adb logcat
ANDROID_VERBOSE Zawiera rozdzielaną przecinkami listę szczegółowych opcji wyjściowych (tagów debugowania) używanych przez emulator. Przykład poniżej pokazuje: ANDROID_VERBOSE zdefiniowane za pomocą tagów debugowania debug-socket i debug-radio:
set ANDROID_VERBOSE=socket,radio

Ta operacja jest równoznaczna z określeniem -verbose -verbose-socket -verbose-radio podczas uruchamiania emulatora z wiersza poleceń.

Nieobsługiwane tagi debugowania są ignorowane. Więcej informacji o tagach debugowania, użyj emulator -help-debug-tags.