sdkmanager
ist ein Befehlszeilentool, mit dem Sie Pakete für das Android SDK ansehen, installieren, aktualisieren und deinstallieren können. Wenn Sie Android Studio verwenden, müssen Sie dieses Tool nicht verwenden. Sie können stattdessen Ihre SDK-Pakete über die IDE verwalten.
Das sdkmanager
-Tool ist im Paket Android SDK Command-Line Tools enthalten.
So installieren Sie mit dem SDK-Manager eine Version der Befehlszeilentools:
- Laden Sie das neueste Paket „Nur Befehlszeilentools“ von der Downloadseite von Android Studio herunter und entpacken Sie es.
- Verschieben Sie das entpackte
cmdline-tools
-Verzeichnis in ein neues Verzeichnis Ihrer Wahl, z. B. android_sdk. Dieses neue Verzeichnis ist dein Android SDK-Verzeichnis. - Erstellen Sie im entpackten Verzeichnis
cmdline-tools
ein Unterverzeichnis mit dem Namenlatest
. - Verschieben Sie den Inhalt des ursprünglichen Verzeichnisses
cmdline-tools
, einschließlich des Verzeichnisseslib
, des Verzeichnissesbin
, der DateiNOTICE.txt
und der Dateisource.properties
, in das neu erstellte Verzeichnislatest
. Sie können die Befehlszeilentools jetzt von diesem Speicherort aus verwenden. Optional: Wenn Sie eine vorherige Version der Befehlszeilentools installieren möchten, führen Sie den folgenden Befehl aus:
android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
Ersetzen Sieversion
durch die Version, die Sie installieren möchten, z. B.5.0
.
Nutzung
Mit sdkmanager
können Sie installierte und verfügbare Pakete auflisten, Pakete installieren und Pakete aktualisieren. Weitere Informationen finden Sie in den folgenden Abschnitten.
Liste der installierten und verfügbaren Pakete
Verwenden Sie die folgende Syntax, um installierte und verfügbare Pakete aufzulisten:
sdkmanager --list [options] \ [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)
Mit der Option channel
kannst du ein Paket aus einem Kanal bis einschließlich channel_id
einschließen. Geben Sie beispielsweise den Canary-Kanal an, um Pakete aus allen Kanälen aufzulisten.
Pakete installieren
Verwenden Sie die folgende Syntax, um Pakete zu installieren:
sdkmanager packages [options]
Das Argument packages ist ein SDK-Pfad, der wie beim Befehl --list
in Anführungszeichen gesetzt ist. Beispiel: "build-tools;34.0.0"
oder "platforms;android-33"
.
Sie können mehrere Paketpfade übergeben, die durch ein Leerzeichen getrennt sind. Sie müssen jedoch jeweils in Anführungszeichen gesetzt werden. So installieren Sie beispielsweise die neuesten Plattformtools und die SDK-Tools für API-Level 33:
sdkmanager "platform-tools" "platforms;android-33"
Alternativ können Sie eine Textdatei übergeben, in der alle Pakete angegeben sind:
sdkmanager --package_file=package_file [options]
Das Argument package_file ist der Speicherort einer Textdatei, in der jede Zeile ein SDK-Pfad zu einem zu installierenden Paket ist (ohne Anführungszeichen).
Fügen Sie das Flag --uninstall
hinzu, um die Deinstallation vorzunehmen:
sdkmanager --uninstall packages [options] sdkmanager --uninstall --package_file=package_file [options]
Verwenden Sie die folgende Syntax, um CMake oder das NDK zu installieren:
sdkmanager --install ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"] [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)
Verwenden Sie beispielsweise den folgenden Befehl, um die angegebene NDK-Version unabhängig von ihrem aktuellen Kanal zu installieren:
sdkmanager --install "ndk;21.3.6528147" --channel=3 // Install the NDK from the canary channel (or below) sdkmanager --install "cmake;10.24988404" // Install a specific version of CMake
Alle installierten Pakete aktualisieren
Verwenden Sie folgende Syntax, um alle installierten Pakete zu aktualisieren:
sdkmanager --update [options]
Lizenzen akzeptieren
Sie müssen die erforderliche Lizenz für jedes installierte Paket akzeptieren. Dieser Schritt erfolgt während der Installation, wenn Sie Pakete in Android Studio installieren.
Wenn Sie Android Studio nicht installiert haben oder es sich um einen CI-Server oder ein anderes headless Linux-Gerät ohne installierte GUI handelt, führen Sie Folgendes über die Befehlszeile aus:
sdkmanager --licenses
Sie werden dann aufgefordert, alle Lizenzen zu akzeptieren, die noch nicht akzeptiert wurden.
Optionen
In der folgenden Tabelle sind die verfügbaren Optionen für die im vorherigen Abschnitt aufgeführten Befehle aufgeführt:
Option | Beschreibung |
---|---|
--sdk_root=path
|
Verwenden Sie den angegebenen SDK-Pfad anstelle des SDKs, das dieses Tool enthält. |
--channel=channel_id
|
Pakete in Kanälen bis einschließlich channel_id einbeziehen Folgende Kanäle sind verfügbar:
|
--include_obsolete
|
Fügen Sie veraltete Pakete in den Paketeintrag oder in Paketupdates ein.
Nur für --list und --update .
|
--no_https
|
Alle Verbindungen müssen HTTP anstelle von HTTPS verwenden. |
--newer
|
Mit --list werden nur neue oder aktualisierbare Pakete angezeigt.
|
--verbose
|
Ausführlicher Ausgabemodus. Fehler, Warnungen und Informationsmeldungen werden ausgegeben. |
--proxy={http | socks}
|
Stellen Sie eine Verbindung über einen Proxy des angegebenen Typs her: entweder http für Hochprotokolle wie HTTP oder FTP oder socks für einen SOCKS-Proxy (V4 oder V5).
|
--proxy_host={IP_address | DNS_address}
|
IP- oder DNS-Adresse des zu verwendenden Proxys. |
--proxy_port=port_number
|
Proxy-Portnummer, zu der eine Verbindung hergestellt werden soll. |