Możesz skonfigurować działanie Android Studio i narzędzi wiersza poleceń, ustawiając zmienne środowiskowe. Jedną z najbardziej przydatnych zmiennych środowiskowych jest ANDROID_HOME
. Jest ona odczytywana przez wiele narzędzi, aby określić katalog instalacyjny pakietu Android SDK.
Aby uruchamiać narzędzia z wiersza poleceń bez podawania pełnej ścieżki do pliku wykonywalnego, ustaw zmienną środowiskową ścieżki wyszukiwania polecenia tak, aby obejmowała ANDROID_HOME/tools
, ANDROID_HOME/tools/bin
i ANDROID_HOME/platform-tools
.
Ustawianie zmiennych środowiskowych
Poniższe przykłady pokazują, jak ustawić zmienne środowiskowe w oknie terminala i w skrypcie powłoki w różnych systemach operacyjnych. Zmienne ustawień w oknach terminala obowiązują tylko wtedy, gdy okno jest otwarte. W systemach macOS i Linux przy każdym uruchomieniu nowej powłoki w skryptach inicjowania powłoki określone są ustawienia zmiennych. W systemie Windows ustawienia zmiennych można skonfigurować w ustawieniach systemu.
Windows: w oknie terminala wpisz:
set HTTP_PROXY=myserver:1981
Możesz też dodać ją przy użyciu interfejsu użytkownika systemu Windows. Aby dowiedzieć się, jak to zrobić, zapoznaj się z dokumentacją dotyczącą używanej wersji systemu Windows.
macOS i Linux: dokładna metoda ustawiania zmiennych środowiskowych zależy od używanej powłoki. Aby określić działający typ powłoki, wpisz:
echo $0
W powłokach, takich jak Gnu Bash czy Zsh, zmienne są ustawiane przy użyciu tej składni:
export VARIABLE_NAME=<new-value>
W innych powłokach, takich jak TCSH, zmienne są ustawiane przy użyciu tej składni:
setenv VARIABLE_NAME <new-value>
Polecenia te można dodawać do skryptu inicjowania powłoki, aby ustawiać zmienne przy każdym uruchomieniu nowej instancji powłoki.
Lokalizacja skryptu inicjowania powłoki zależy od używanej powłoki.
W przypadku Gnu Bash lokalizacją może być ~/.bash_profile
. W przypadku Zsh lokalizacją może być ~/.zprofile
. W przypadku TCSH lokalizacją może być ~/.cshrc
. Dla pewności sprawdź dokumentację używanej powłoki.
Możesz też zaktualizować zmienną środowiskową PATH
, aby uwzględnić lokalizacje narzędzi.
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
Informacje o zmiennych
W tabeli poniżej opisujemy często używane zmienne środowiskowe w narzędziach Android SDK.
Zmienne środowiskowe pakietu Android SDK | |
---|---|
ANDROID_HOME |
Ustawia ścieżkę do katalogu instalacji pakietu SDK. Po ustawieniu wartość zwykle się nie zmienia i może być używana przez wielu użytkowników na tym samym komputerze.
Interfejs ANDROID_SDK_ROOT , który wskazuje też katalog instalacji pakietu SDK, został wycofany. Jeśli nadal będziesz z niej korzystać, Android Studio i wtyczka Androida do obsługi Gradle sprawdzą, czy stare i nowe zmienne są spójne.
|
ANDROID_USER_HOME |
Ustawia ścieżkę do katalogu preferencji użytkownika dla narzędzi wchodzących w skład pakietu Android SDK.
Domyślna wartość to $HOME/.android/ .
Niektóre starsze narzędzia, takie jak Android Studio 4.3 i starsze, nie odczytują |
REPO_OS_OVERRIDE
|
Ustaw tę zmienną na windows , macosx lub linux , jeśli używasz sdkmanager do pobierania pakietów systemu operacyjnego innego niż bieżąca maszyna.
|
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 ustawienia tych zmiennych. Więcej informacji znajdziesz w artykule o konfigurowaniu Android Studio. | |
STUDIO_VM_OPTIONS
|
Określa lokalizację pliku studio.vmoptions .
Ten plik zawiera ustawienia wpływające na wydajność maszyny wirtualnej HotSpot Javy. Możesz go też otworzyć w Android Studio. Zobacz Dostosowywanie opcji maszyny wirtualnej.
|
STUDIO_PROPERTIES
|
Ustawia lokalizację pliku idea.properties . Ten plik umożliwia dostosowanie właściwości środowiska IDE Android Studio, takich jak ścieżka do wtyczek zainstalowanych przez użytkownika oraz maksymalny rozmiar pliku obsługiwany przez IDE. Zapoznaj się z sekcją o dostosowywaniu właściwości IDE.
|
STUDIO_JDK
|
Ustawia lokalizację pakietu JDK, w którym działa Android Studio. Po uruchomieniu IDE sprawdza zmienne środowiskowe STUDIO_JDK , JDK_HOME i JAVA_HOME (w tej kolejności).
|
STUDIO_GRADLE_JDK
|
Ustawia lokalizację pliku JDK, którego Android Studio używa do uruchamiania demona Gradle. Po uruchomieniu IDE najpierw sprawdza STUDIO_GRADLE_JDK . Jeśli STUDIO_GRADLE_JDK nie jest zdefiniowany, IDE używa wartości określonej w ustawieniach struktury projektu.
|
Zmienne środowiskowe emulatora | |
Domyślnie emulator przechowuje pliki konfiguracji w lokalizacji $HOME/.android/ , a dane AVD w: $HOME/.android/avd/ . Możesz zastąpić wartości domyślne, ustawiając poniższe zmienne środowiskowe.
Polecenie emulator -avd <avd_name> przeszukuje katalog avd w kolejności wartości w $ANDROID_AVD_HOME , $ANDROID_USER_HOME/avd/ i $HOME/.android/avd/ .
Aby uzyskać pomoc dotyczącą zmiennej środowiskowej emulatora, wpisz |
|
ANDROID_EMULATOR_HOME
|
Ustawia ścieżkę do katalogu konfiguracji emulatora specyficznego dla użytkownika. Domyślna wartość to $ANDROID_USER_HOME .
Starsze narzędzia, takie jak Android Studio 4.3 i starsze, nie obsługują |
ANDROID_AVD_HOME
|
Ustawia ścieżkę do katalogu zawierającego wszystkie pliki specyficzne dla AVD, które składają się głównie z bardzo dużych obrazów dysków. Lokalizacja domyślna to $ANDROID_EMULATOR_HOME/avd/ . Jeśli na dysku jest mało miejsca, możesz określić nową lokalizację.
|
Po uruchomieniu emulator Androida wysyła zapytania do tych zmiennych środowiskowych: | |
ANDROID_LOG_TAGS
|
Zobacz ANDROID_LOG_TAGS .
|
HTTP_PROXY
|
Zawiera ustawienie serwera proxy HTTP/HTTPS dla globalnego serwera proxy HTTP. między hostem a portem jest używany separator dwukropków (:), Na przykład: Działa to tak samo jak podanie argumentu
|
ANDROID_VERBOSE
|
Zobacz ANDROID_VERBOSE .
|
ANDROID_HOME
|
Zobacz ANDROID_HOME .
|
ANDROID_EMULATOR_USE_SYSTEM_LIBS
|
Zawiera wartość 0 (domyślną) lub 1. Wartość 1 oznacza, że używany jest plik libstdc++.so systemu, a nie plik dołączony do emulatora.
Ustaw tę zmienną środowiskową tylko wtedy, gdy z powodu problemu z biblioteką systemową emulator nie uruchamia się w systemie Linux. Na przykład niektóre biblioteki sterownika Linux Radeon GL wymagają nowszego pliku libstdc++.so .
|
Dźwięk szybkiego emulatora (QEMU) | |
QEMU_AUDIO_DRV
QEMU_AUDIO_OUT_DRV
QEMU_AUDIO_IN_DRV
|
W systemie Linux możesz zmienić domyślny backend audio emulatora, ustawiając zmienną środowiskową QEMU_AUDIO_DRV na jedną z tych wartości:
set QEMU_AUDIO_DRV=alsa
Możesz też używać różnych backendów dla danych wejściowych i wyjściowych audio, wybierając jedną z wartości QEMU dla zmiennych środowiskowych set QEMU_AUDIO_OUT=esd set QEMU_AUDIO_IN=oss
Jeśli chcesz wyłączyć obsługę dźwięku, użyj opcji
|
zmienne środowiskowe adb | |
ANDROID_SERIAL
|
Użyj tej zmiennej, aby podać numer seryjny emulatora, np. emulator-5555, do polecenia adb . Jeśli ustawisz tę zmienną, ale za pomocą opcji -s podasz numer seryjny w wierszu poleceń, wartość w pliku ANDROID_SERIAL zostanie zastąpiona danymi wejściowymi z wiersza poleceń.
Ten przykład ustawia set ANDROID_SERIAL=emulator-555 adb install helloWorld.apk |
Zmienne środowiskowe adb logcat | |
ANDROID_LOG_TAGS
|
Użyj tej zmiennej środowiskowej, aby ustawić domyślne wyrażenie filtra, gdy uruchamiasz logcat na komputerze deweloperskim. Przykład:
set
Działa to tak samo jak podanie argumentu Więcej informacji i przykłady znajdziesz w sekcji Filtrowanie danych wyjściowych logu. |
ADB_TRACE
|
Zawiera rozdzielaną przecinkami listę informacji debugowania, które mają zostać zarejestrowane.
Mogą to być te wartości: all , adb , sockets , packets , rwx , usb , sync , sysdeps , transport i jdwp .
Aby wyświetlić logi set ADB_TRACE=all adb logcat |
ANDROID_VERBOSE
|
Zawiera oddzieloną przecinkami listę szczegółowych opcji wyjściowych (tagów debugowania) używanych przez emulator. Poniższy przykład pokazuje parametr ANDROID_VERBOSE zdefiniowany za pomocą tagów debugowania debug-socket i debug-radio :set ANDROID_VERBOSE=socket,radio Działa to tak samo jak określenie razem argumentów
Nieobsługiwane tagi debugowania są ignorowane. Więcej informacji o tagach debugowania znajdziesz tutaj: |