sdkmanager

sdkmanager è uno strumento a riga di comando che consente di visualizzare, installare, aggiornare e disinstallare i pacchetti per l'SDK Android. Se utilizzi Android Studio, non è necessario utilizzare questo strumento e puoi invece gestire i pacchetti SDK dall'IDE.

Lo strumento sdkmanager è fornito nel pacchetto Strumenti a riga di comando dell'SDK Android. Per utilizzare SDK Manager per installare una versione degli strumenti a riga di comando, procedi nel seguente modo:

  1. Scarica l'ultimo pacchetto "Solo strumenti a riga di comando" dalla pagina di download di Android Studio e decomprimi il pacchetto.
  2. Sposta la directory cmdline-tools decompressa in una nuova directory a tua scelta, ad esempio android_sdk. La nuova directory è la tua directory dell'SDK Android.
  3. Nella directory cmdline-tools decompressa, crea una sottodirectory denominata latest.
  4. Sposta i contenuti originali della directory cmdline-tools, inclusi la directory lib, la directory bin, il file NOTICE.txt e il file source.properties, nella directory latest appena creata. Da qui puoi usare gli strumenti a riga di comando.
  5. (Facoltativo) Per installare una versione precedente degli strumenti a riga di comando, esegui questo comando:

    android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
    
    Sostituisci version con la versione che vuoi installare, ad esempio 5.0.

Utilizzo

Puoi utilizzare sdkmanager per elencare i pacchetti installati e disponibili, installarli e aggiornare i pacchetti. Per maggiori dettagli, consulta le sezioni seguenti.

Elenca i pacchetti installati e disponibili

Per elencare i pacchetti installati e disponibili, utilizza la seguente sintassi:

sdkmanager --list [options] \
           [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)

Utilizza l'opzione channel per includere un pacchetto di un canale fino al giorno channel_id incluso. Ad esempio, specifica il canale canary per elencare i pacchetti di tutti i canali.

Installa pacchetti

Per installare i pacchetti, utilizza la seguente sintassi:

sdkmanager packages [options]

L'argomento packages è un percorso in stile SDK, come mostrato nel comando --list, racchiuso tra virgolette. Ad esempio, "build-tools;34.0.0" o "platforms;android-33".

Puoi trasmettere più percorsi dei pacchetti separati da uno spazio, ma devono essere tutti racchiusi in un insieme di virgolette. Ad esempio, ecco come installare gli strumenti della piattaforma più recenti e gli strumenti SDK per il livello API 33:

sdkmanager "platform-tools" "platforms;android-33"

In alternativa, puoi trasmettere un file di testo che specifichi tutti i pacchetti:

sdkmanager --package_file=package_file [options]

L'argomento package_file è la posizione di un file di testo in cui ogni riga è un percorso in stile SDK di un pacchetto da installare (senza virgolette).

Per disinstallare, aggiungi il flag --uninstall:

sdkmanager --uninstall packages [options]
sdkmanager --uninstall --package_file=package_file [options]

Per installare CMake o NDK, utilizza la seguente sintassi:

sdkmanager --install
           ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"]
           [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)

Ad esempio, utilizza il seguente comando per installare la versione NDK specificata indipendentemente dal canale su cui si trova attualmente:

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

Aggiorna tutti i pacchetti installati

Per aggiornare tutti i pacchetti installati, utilizza la seguente sintassi:

sdkmanager --update [options]

Accetta licenze

Devi accettare la licenza necessaria per ogni pacchetto installato. Questo passaggio si verifica durante il flusso di installazione, quando installi i pacchetti da Android Studio.

Se non hai installato Android Studio o se si tratta di un server CI o di un altro dispositivo Linux headless senza GUI installata, procedi nel seguente modo dalla riga di comando:

sdkmanager --licenses

In questo modo, ti verrà chiesto di accettare le licenze che non sono già state accettate.

Opzioni

Nella tabella seguente sono elencate le opzioni disponibili per i comandi elencati nella sezione precedente:

Opzione Descrizione
--sdk_root=path Utilizza il percorso SDK specificato anziché l'SDK contenente questo strumento.
--channel=channel_id Includi i pacchetti nei canali fino a channel_id incluso. I canali disponibili sono:

0 (stabile), 1 (beta), 2 (Dev) e 3 (Canary).

--include_obsolete Includi pacchetti obsoleti nell'elenco dei pacchetti o negli aggiornamenti del pacchetto. Da utilizzare solo con --list e --update.
--no_https Forza tutte le connessioni a utilizzare HTTP anziché HTTPS.
--newer Con --list, puoi mostrare solo i pacchetti nuovi o aggiornabili.
--verbose Modalità di output dettagliata. Vengono stampati errori, avvisi e messaggi informativi.
--proxy={http | socks} Connettiti tramite un proxy del tipo specificato: http per protocolli di alto livello come HTTP o FTP oppure socks per un proxy SOCKS (V4 o V5).
--proxy_host={IP_address | DNS_address} Indirizzo IP o DNS del proxy da utilizzare.
--proxy_port=port_number Numero di porta del proxy a cui connettersi.