Android SDK Build-Tools è un componente dell'SDK Android necessario per la compilazione di app per Android. È installato nella directory <sdk>/build-tools/
.
Dovresti sempre mantenere aggiornato il componente degli strumenti di creazione scaricando l'ultima versione
con Android SDK Manager. Se utilizzi
plug-in Android per Gradle 3.0.0 o versioni successive,
il tuo progetto utilizza automaticamente una versione predefinita degli strumenti di creazione specificati dal plug-in. A
utilizzare una versione diversa degli strumenti di build, specificala utilizzando
buildToolsVersion
nel build.gradle
del tuo modulo, come segue:
android { buildToolsVersion "34.0.0" ... }
android { buildToolsVersion = "34.0.0" ... }
Revisioni
Le sezioni seguenti forniscono note sulle release degli Strumenti di creazione. Per determinare quali revisioni degli strumenti di compilazione sono disponibili nel tuo SDK, consulta l'elenco Pacchetti installati in Android SDK Manager.
Correzioni di bug e miglioramenti generali.
Questo aggiornamento include il supporto per la compilazione con le API di anteprima di Android 14.
Questo aggiornamento risolve il seguente problema:
-
La versione 33.0.0 di
core-lambda-stubs.jar
è diversa su macOS e su Linux/Windows. (vedi issue #237299698).
Questo aggiornamento risolve il seguente problema:
- AIDL non funziona con gli strumenti di build 33.0.0. (vedi il problema n. 236167971)
Questo aggiornamento include il supporto per la compilazione con le API di Android 11 Preview.
Questo aggiornamento risolve il seguente problema:
- Problema di compilazione con Renderscript su macOS Catalina. (vedi issue #142590626)
Questo aggiornamento risolve il seguente problema:
Questo aggiornamento include il supporto per la creazione con il livello API 29.
Questo aggiornamento include il supporto di plug-in Android per Gradle 3.2.0 e risolve i seguenti problemi:
-
È stato risolto un bug della libreria JNI che causava l'arresto anomalo delle app durante la chiamata
androidx.renderscript.RenderScript.create()
. -
È stato corretto un bug che causava errori di generazione di
Program type already present
conandroidx.annotation
risorse.
Include l'ultima versione di D8.
Migliora il supporto per la compilazione di lambda quando abiliti Funzionalità del linguaggio Java 8.
Migliora il supporto di Funzionalità del linguaggio Java 8.
Aggiunge il supporto per il multidex legacy per gli APK di test. (Issue #37324038)
Oltre alle correzioni di bug generali, questa release include i seguenti aggiornamenti:
- Aggiorna
apksigner
alla versione 0.8:- Compatibilità con Java 9. (Issue #37137869)
-
Nuovo parametro
--pass-encoding
per gestire gli archivi chiavi e le chiavi criptate utilizzando password non ASCII. Se passi a Java 9 eapksigner
non riesce a decriptare l'archivio chiavi o la chiave, utilizza questo parametro per specificare la codifica dei caratteri utilizzato per creare l'archivio chiavi o la chiave. Per ulteriori informazioni, consultaapksigner
documentazione oppure eseguiapksigner sign --help
dalla riga di comando. -
Messaggio di errore migliore quando
apksigner
non riesce a verificare una firma JAR a causa di un algoritmo digest o di firma non supportato. (Issue #63525618)
-
Supporto per la modalità daemon AAPT2 quando si utilizza
plug-in Android per Gradle
3.0.0-beta7
o superiore.
Oltre alle correzioni di bug generali, questa release ripristina apksigner
nel pacchetto degli strumenti di compilazione (è stato omesso per errore nella versione 26.0.0) e include
i seguenti aggiornamenti dello strumento:
- Aggiunge il supporto di PKCS #11 per consentire la firma con chiavi memorizzate in hardware sicuro. (Problema n. 37140484)
- Aggiunge il supporto per il caricamento di altri Fornitori JCA prima di firmare.
- Rispetta
android:targetSandboxVersion
durante la verifica degli APK. - Durante la firma, rifiuta gli APK con file che includono "RP" (ritorno a capo), "LF" (feed a riga), o "NUL" (null) caratteri speciali nel nome del file.
- Corregge
apksigner.bat
per gestire correttamente i parametri contenenti spazi. (Problema n. 38132450) - Corregge un bug nella verifica della firma JAR quando sono presenti più sintesi per lo stesso
voce in
MANIFEST.MF
. (Problema n. 38497270)
Aggiunge il supporto per la creazione con il livello API 26 e contiene correzioni di bug generali.
Aggiornamenti a apksigner
:
- Parametro
--in
aggiunto per la simmetria con il parametro--out
esistente. - Se non specifichi la password della chiave utilizzando
--key-pass
,apksigner
utilizza la password dell'archivio chiavi come password della chiave. Tuttavia, se la chiave richiede un'altra password, ti verrà chiesto di inserire la password della chiave dalla riga di comando. (Issue #37134986) - È stata aggiunta la compatibilità con
jarsigner
per le password non ASCII. (Problema n. 37135737)
Correzioni di bug.
Questa release include correzioni di bug e i seguenti
miglioramenti a apksigner
:
- Supporto per APK con nomi delle voci JAR offuscati.
- Lo switch
--print-certs
ora esegue anche il dump delle impronte MD5.
Correzioni di bug per la catena di strumenti Jack:
- È stato risolto il problema per cui Jack supportava file di origine non ASCII. (Issue #218892)
- È stato risolto un problema che causa un
AssertionError
durante alcune compilation. (problema #208414)
- Aggiunti
apksigner
, uno strumento di firma dell'APK che sostituiscejarsigner
. Per impostazione predefinita,apksigner
firma gli APK con lo schema di firma JAR convenzionale (utilizzato dajarsigner
) e l'APK Schema di firma v2 introdotto in Android 7.0 (livello API 24). Qualsiasi la modifica di un APK firmato con lo schema di firma dell'APK v2 rende il suo firma. Di conseguenza, la post-elaborazione dell'APK, comezipalign
, deve da eseguire prima di richiamareapksigner
, non dopo. Richiamozipalign
prima del giornoapksigner
va bene perchéapksigner
conserva l'allineamento e la compressione degli APK (a differenza dijarsigner
).
- Risolvere i problemi di RenderScript Supporta la libreria sui dispositivi arm64.
- Risolvere i problemi di RenderScript Supporta la Raccolta su alcuni dispositivi Jelly Bean.
- Supporto di
renderscriptTargetAPI 21+
quando si utilizza il plug-in Android per Gradle, revisione 2.1.0 e successive.
- Le prestazioni di unione dello strumento
dx
sono state migliorate. - Sono stati risolti i problemi di RenderScript compilatore per Windows.
Sono stati risolti i problemi degli strumenti RenderScript.
Aggiunto il supporto per la release Android 6.0 (livello API 23).
Sono stati risolti i problemi di compatibilità con Kernel RenderScript su Dispositivi da Android 4.4 (livello API 19) ad Android 4.1 (livello API 16).
Aggiunto il supporto per Android 5.1 (livello API 22).
È stato risolto il problema relativo alla creazione di layout dei dati in modalità a 32 bit.
Sono stati risolti i problemi relativi agli script multidex.
È stato aggiunto il supporto dei file multidex per gli APK e il supporto di Jack per fare riferimento al metodo 64K limite.
Aggiornamenti completi per Eclipse ADT per risolvere i problemi di instabilità sulle piattaforme Windows.
Aggiornamenti iniziali per Eclipse ADT su Windows. Utilizza la revisione 21.0.2.
- Note generali:
-
- È stato aggiunto il supporto per Android 5.0 (livello API 21).
- RenderScript ora supporta il funzionamento senza interruzioni a 32/64 bit per il livello API 21 e versioni successive.
- È stato risolto il problema del sistema di compilazione Gradle durante l'utilizzo del plug-in JaCoCo. (Problema 69174)
- È stata aggiunta un'opzione input-list da utilizzare con le lunghe righe di comando su Windows.
- Note generali:
-
- È stato aggiunto il supporto per Android Wear.
- Note generali:
-
- È stato aggiunto
zipalign
agli strumenti di creazione. - Hai modificato
aapt
per ignorare i file XML che non è stato possibile compilare.
- È stato aggiunto
È stato risolto un problema relativo al supporto di RenderScript.
- Sono stati risolti i problemi di build di RenderScript:
-
- È stato risolto un problema con la codifica del codice bit di RenderScript. (Problema 64775)
- È stato risolto un problema relativo alla mancanza di simboli matematici in RenderScript (Problema 64110)
- Sono stati risolti vari problemi relativi alla build:
-
- È stato corretto il supporto della compilazione di RenderScript in modalità NDK con Gradle.
- È stato risolto il problema
BufferOverflowException
nella build dx. (Issue 61710)
È stato aggiunto il supporto per i target di build Android 4.4 (livello API 19).
Sono stati corretti diversi problemi minori di compilazione.
È stato risolto il problema relativo alla modalità di supporto di RenderScript.
È stato aggiunto il supporto per i target di compilazione Android 4.3 (livello API 18).
Rilascio iniziale.
- Note generali:
-
- È incluso il supporto per i target delle build per Android 4.2 (livello API 17).
- Disaccoppiato i componenti specifici per la build dell'SDK Android dagli strumenti della piattaforma , in modo che gli strumenti di creazione possano essere aggiornati indipendentemente dall'integrazione dei componenti dell'ambiente di sviluppo di sviluppo (IDE).