Umgebungsvariablen

Sie können das Verhalten von Android Studio und der Befehlszeilentools konfigurieren, indem Sie Folgendes festlegen: Umgebungsvariablen. Eine der nützlichsten Umgebungsvariablen, die Sie festlegen sollten, ANDROID_HOME, das von vielen Tools gelesen wird Bestimmen Sie das Android SDK-Installationsverzeichnis. So führen Sie Tools über die Befehlszeile aus, ohne den vollständigen Pfad zur ausführbaren Datei anzugeben: leg deinen Befehl fest Einzuschließende Umgebungsvariable für den Suchpfad ANDROID_HOME/tools, ANDROID_HOME/tools/bin und ANDROID_HOME/platform-tools

Umgebungsvariablen festlegen

Die folgenden Beispiele zeigen, wie Umgebungsvariablen in einem Terminalfenster und in ein Shell-Skript für verschiedene Betriebssysteme. Variableneinstellungen in den Terminal-Fenstern zuletzt solange das Fenster geöffnet ist. Unter macOS und Linux wird jedes Mal, wenn eine neue Shell gestartet wird, eine Variable Einstellungen festgelegt In Shell Initialisierungsskripts. Unter Windows können Variableneinstellungen Systemeinstellungen festlegen.

Windows: Geben Sie in einem Terminalfenster Folgendes ein:

set HTTP_PROXY=myserver:1981

Alternativ können Sie es über die Windows-Benutzeroberfläche hinzufügen. Lesen Sie in der Dokumentation zu Ihrer Windows-Version nach um zu erfahren, wie das geht.

macOS und Linux:Die genaue Methode zum Festlegen von Umgebungsvariablen hängt von welche Shell Sie verwenden. Geben Sie Folgendes ein, um zu ermitteln, welcher Shell-Typ ausgeführt wird:

echo $0

In Shells wie Gnu Bash oder Zsh, Variablen werden so festgelegt: Syntax:

export VARIABLE_NAME=<new-value>

In anderen Shells wie TCSH, werden Variablen mithilfe der folgende Syntax:

setenv VARIABLE_NAME <new-value>

Diese Befehle können zum Shell-Initialisierungsskript hinzugefügt werden, um die Variablen jedes Mal festzulegen, wenn ein neue Shell-Instanz ausgeführt wird.

Der Speicherort des Shell-Initialisierungsskripts hängt von der verwendeten Shell ab. Für Gnu Bash kann der Standort ~/.bash_profile sein. Für Zsh, der Standort kann ~/.zprofile sein. Für das TCSH kann der Standort folgendermaßen aussehen: ~/.cshrc Prüfen die Dokumentation der verwendeten Shell, um sicherzugehen.

Sie können auch die Umgebungsvariable PATH aktualisieren, um die Speicherorte des Tools anzugeben.

Für Gnu Bash oder Zsh:

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

Für das TCSH:

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

Variablenreferenz

In der folgenden Tabelle werden häufig verwendete Umgebungsvariablen für die Android SDK-Tools beschrieben.

Tabelle 1 Umgebungsvariablen

Android SDK-Umgebungsvariablen
ANDROID_HOME Legt den Pfad zum SDK-Installationsverzeichnis fest. Nach der Einrichtung ändert sich der Wert in der Regel nicht und kann von mehreren Nutzern auf demselben Computer gemeinsam verwendet werden. ANDROID_SDK_ROOT, der auch auf das SDK-Installationsverzeichnis verweist. wurde eingestellt. Wenn Sie es weiterhin verwenden, werden Android Studio und das Android-Gradle-Plug-in ob die alten und neuen Variablen einheitlich sind.
ANDROID_USER_HOME Legt den Pfad zum Verzeichnis der Nutzereinstellungen für Tools fest, die Teil des Android SDK sind. Die Standardeinstellung ist $HOME/.android/.

Für einige ältere Tools wie Android Studio 4.3 und frühere Versionen werden keine Daten zur ANDROID_USER_HOME Um den Speicherort der Nutzereinstellungen für diese älteren Tools zu überschreiben, legen Sie ANDROID_SDK_HOME in das übergeordnete Verzeichnis, für das die Verzeichnis .android, in dem das Verzeichnis erstellt werden soll.

REPO_OS_OVERRIDE Legen Sie diese Variable auf windows, macosx oder linux fest, wenn Sie verwenden sdkmanager , um Pakete für ein anderes Betriebssystem als den aktuellen Computer herunterzuladen.
Umgebungsvariablen für die Konfiguration von Android Studio
Die Konfigurationsvariablen von Android Studio enthalten Einstellungen, mit denen der Speicherort von und das JDK. Beim Start prüft Android Studio diese Variablen um die Einstellungen aufzurufen. Weitere Informationen finden Sie unter Konfigurieren Sie Android Studio.
STUDIO_VM_OPTIONS Legt den Speicherort der studio.vmoptions-Datei fest. Diese Datei enthält Einstellungen, die die Leistungsmerkmale des Java HotSpots beeinflussen. Virtuelle Maschine Du kannst auch über Android Studio auf diese Datei zugreifen. Weitere Informationen finden Sie unter VM-Optionen anpassen
STUDIO_PROPERTIES Legt den Standort von idea.properties fest -Datei. Mit dieser Datei können Sie die Eigenschaften der Android Studio-IDE anpassen, z. B. den Pfad zu der von Nutzern installierten Plug-ins und die maximale von der IDE unterstützte Dateigröße. Weitere Informationen finden Sie unter Passen Sie Ihre IDE-Eigenschaften an.
STUDIO_JDK Legt den Speicherort des JDK fest, in dem Android Studio ausgeführt wird. Wenn Sie die IDE starten, werden STUDIO_JDK, JDK_HOME und JAVA_HOME geprüft. Umgebungsvariablen in dieser Reihenfolge.
STUDIO_GRADLE_JDK Legt den Speicherort des JDK fest, mit dem Android Studio den Gradle-Daemon startet. Wenn Sie die IDE startet, prüft sie zuerst STUDIO_GRADLE_JDK. Wenn STUDIO_GRADLE_JDK ist nicht definiert, die IDE verwendet den in die Einstellungen der Projektstruktur.
Emulator-Umgebungsvariablen
Standardmäßig speichert der Emulator die Konfigurationsdateien unter $HOME/.android/- und AVD-Daten unter $HOME/.android/avd/. Sie können die Standardeinstellungen überschreiben, indem Sie die folgenden Umgebungsvariablen festlegen. Mit dem Befehl emulator -avd <avd_name> wird avd durchsucht in der Reihenfolge der Werte in $ANDROID_AVD_HOME, $ANDROID_USER_HOME/avd/ und $HOME/.android/avd/.

Wenn Sie Hilfe zu den Emulator-Umgebungsvariablen benötigen, geben Sie emulator -help-environment in die Befehlszeile ein. Informationen zu emulator-Befehlszeilenoptionen, siehe Starten Sie den Emulator über die Befehlszeile.

ANDROID_EMULATOR_HOME Legt den Pfad zur nutzerspezifischen Emulatorkonfiguration fest -Verzeichnis. Die Standardeinstellung ist $ANDROID_USER_HOME.

Ältere Tools wie Android Studio 4.3 und frühere Versionen können nicht lesen, ANDROID_USER_HOME Bei diesen Tools ist der Standardwert $ANDROID_SDK_HOME/.android

ANDROID_AVD_HOME Legt den Pfad zum Verzeichnis fest, das alle AVD-spezifischen -Dateien, die meist aus sehr großen Speicherabbildern bestehen. Der Standardspeicherort ist $ANDROID_EMULATOR_HOME/avd/ Sie können einen neuen Standort angeben, ist der Standardspeicherort wenig Speicherplatz verfügbar.
Der Android-Emulator fragt beim Start die folgenden Umgebungsvariablen ab:
ANDROID_LOG_TAGS Weitere Informationen finden Sie unter ANDROID_LOG_TAGS.
HTTP_PROXY

Enthält den HTTP-/HTTPS-Proxy Einstellung für einen globalen HTTP-Proxy. Verwendet ein Doppelpunkt-Trennzeichen (:) zwischen dem Host und dem Port. Für Beispiel: set HTTP_PROXY=myserver:1981.

Dies entspricht der Angabe der Argument -http-proxy proxy , wenn der Emulator über die Befehlszeile ausgeführt wird.

ANDROID_VERBOSE Weitere Informationen finden Sie unter ANDROID_VERBOSE.
ANDROID_HOME Weitere Informationen finden Sie unter ANDROID_HOME.
ANDROID_EMULATOR_USE_SYSTEM_LIBS Enthält den Wert „0“ (Standardeinstellung) oder „1“. Ein Wert von 1 bedeutet, dass die Die Datei libstdc++.so wird anstelle der im Emulator enthaltenen Datei verwendet. Legen Sie diese Umgebungsvariable nur fest, wenn der Emulator auf Ihrem Linux-System nicht gestartet wird weil es ein Problem mit der Systembibliothek gibt. Einige Linux Radeon GL-Treiberbibliotheken eine neuere libstdc++.so-Datei erforderlich.
Audio im Quick Emulator (QEMU)
QEMU_AUDIO_DRV QEMU_AUDIO_OUT_DRV QEMU_AUDIO_IN_DRV Unter Linux können Sie das Standardaudio ändern des Emulators durch Festlegen der Umgebungsvariable QEMU_AUDIO_DRV auf einen der folgenden Werte: <ph type="x-smartling-placeholder">
    </ph>
  • alsa: Back-End der Advanced Linux Sound Architecture (ALSA) verwenden
  • esd: Back-End von Enlightened Sound Daemon (EsounD) verwenden
  • sdl: Verwenden Sie das SDL-Audio-Back-End (Simple DirectMedia Layer) (keine Audioeingabe). unterstützt)
  • oss:: Back-End des Open Sound System (OSS) verwenden
  • none:: kein Audio
set QEMU_AUDIO_DRV=alsa

Sie können auch verschiedene Back-Ends für die Audioeingabe und -ausgabe verwenden. Wählen Sie dazu eines der QEMU-Werte für QEMU_AUDIO_OUT_DRV und QEMU_AUDIO_IN_DRV Umgebungsvariablen:

set QEMU_AUDIO_OUT=esd
set QEMU_AUDIO_IN=oss

Wenn Sie die Audiounterstützung deaktivieren möchten, verwenden Sie die Option emulator -no-audio oder QEMU_AUDIO_DRV auf none festgelegt. In den folgenden Situationen kann es erforderlich sein, den Ton zu deaktivieren:

  • In seltenen Fällen können Audiotreiber dazu führen, dass Windows neu startet, während der Emulator ausgeführt wird.
  • Auf einigen Linux-Computern bleibt der Emulator beim Start hängen, wenn die Audiounterstützung aktiviert ist.
ADB-Umgebungsvariablen
ANDROID_SERIAL Verwenden Sie diese Variable, um die Seriennummer des Emulators anzugeben, z. B. als Emulator-5555 in einen adb-Befehl. Wenn Sie diese Variable festlegen, aber die Methode -s verwenden um eine Seriennummer über die Befehlszeile anzugeben, überschreibt die Befehlszeileneingabe Wert in ANDROID_SERIAL

Im folgenden Beispiel werden ANDROID_SERIAL festgelegt und Aufrufe adb install helloworld.apk, die anschließend die Android-App installiert -Paket im Emulator-5555.

set ANDROID_SERIAL=emulator-555
adb install helloWorld.apk
ADB Logcat-Umgebungsvariablen
ANDROID_LOG_TAGS Verwenden Sie diese Umgebungsvariable, um einen Standardfilter festzulegen wenn Sie logcat auf Ihrem Entwicklungscomputer ausführen. Beispiel:
set ANDROID_LOG_TAGS=ActivityManager:I MyApp:D *:.

Dies entspricht der Angabe der -logcat tags , wenn Sie den Emulator über die Befehlszeile ausführen.

Siehe Logausgabe filtern finden Sie weitere Informationen und Beispiele.

ADB_TRACE Enthält eine durch Kommas getrennte Liste der zu protokollierenden Informationen zur Fehlerbehebung. Folgende Werte sind möglich: all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport und jdwp.

Legen Sie ADB_TRACE fest, um die adb-Logs für die adb-Clients und den adb-Server aufzurufen. auf all und rufen Sie dann den Befehl adb logcat so auf:

set ADB_TRACE=all
adb logcat
ANDROID_VERBOSE Enthält eine durch Kommas getrennte Liste ausführlicher Ausgabeoptionen (Debug-Tags), die vom Emulator verwendet werden. Das folgende Beispiel zeigt ANDROID_VERBOSE definiert mit den Debug-Tags debug-socket und debug-radio:
set ANDROID_VERBOSE=socket,radio

Dies entspricht der Angabe von -verbose -verbose-socket -verbose-radio wenn Sie den Emulator über die Befehlszeile ausführen.

Nicht unterstützte Debug-Tags werden ignoriert. Weitere Informationen Informationen zu Debug-Tags erhalten Sie mit emulator -help-debug-tags.