Versionshinweise zu SDK Build Tools

Die Android SDK Build-Tools sind eine Komponente des Android SDK, die zum Erstellen von Android-Apps erforderlich ist. Es ist im Verzeichnis <sdk>/build-tools/ installiert.

Sie sollten die Build Tools immer auf dem neuesten Stand halten, indem Sie die neueste Version mit dem Android SDK Manager herunterladen. Wenn Sie das Android-Plug-in für Gradle 3.0.0 oder höher verwenden, wird in Ihrem Projekt automatisch eine Standardversion der vom Plug-in angegebenen Build-Tools verwendet. Wenn Sie eine andere Version der Build-Tools verwenden möchten, geben Sie sie in der build.gradle Ihres Moduls mit buildToolsVersion an. Gehen Sie dazu so vor:

android {
    buildToolsVersion "34.0.0"
    ...
}
android {
    buildToolsVersion = "34.0.0"
    ...
}

Überarbeitungen

In den folgenden Abschnitten finden Sie Hinweise zu Releases der Build-Tools. Welche Versionen der Build-Tools in Ihrem SDK verfügbar sind, sehen Sie im Android SDK Manager im Abschnitt Installed Packages (Installierte Pakete).

Build Tools, Revision 34.0.0 RC3(April 2023)

Allgemeine Fehlerkorrekturen und Verbesserungen.

Dieses Update enthält Unterstützung für die Entwicklung mit Android 14-Vorabversionen von APIs.

Mit diesem Update wird das folgende Problem behoben:

  • core-lambda-stubs.jar Version 33.0.0 unterscheidet sich unter macOS von der Version unter Linux/Windows. (Siehe Problem 237299698.)

Mit diesem Update wird das folgende Problem behoben:

Dieses Update umfasst die Unterstützung für die Erstellung mit Android 11-Vorabversionen von APIs.

Mit diesem Update wird das folgende Problem behoben:

Mit diesem Update wird das folgende Problem behoben:

Dieses Update umfasst die Unterstützung für die Entwicklung mit API-Level 29.

Dieses Update enthält Unterstützung für das Android Gradle-Plug-in 3.2.0 und behebt die folgenden Probleme:

  • Ein Fehler in der JNI-Bibliothek wurde behoben, der beim Aufrufen von androidx.renderscript.RenderScript.create() zum Absturz von Apps führte.
  • Ein Fehler wurde behoben, der Program type already present-Buildfehler mit androidx.annotation-Ressourcen verursachte.

Enthält die neueste Version von D8.

Die Unterstützung für das Kompilieren von Lambdas wird verbessert, wenn Sie Java 8-Sprachfunktionen aktivieren.

Verbesserte Unterstützung für Java 8-Sprachfunktionen.

Unterstützung für die alte Multidex-Version für Test-APKs hinzugefügt. (Problem 37324038)

Neben allgemeinen Fehlerkorrekturen enthält dieser Release die folgenden Updates:

  • Aktualisiert apksigner auf Version 0.8:
    • Kompatibilität mit Java 9. (Problem 37137869)
    • Neuer --pass-encoding-Parameter zum Verwalten von Schlüsselspeichern und Schlüsseln, die mit nicht ASCII-Passwörtern verschlüsselt sind. Wenn Sie zu Java 9 wechseln und apksigner Ihren Schlüsselspeicher oder Schlüssel nicht entschlüsseln kann, verwenden Sie diesen Parameter, um die Zeichencodierung anzugeben, die Sie zum Erstellen des Schlüsselspeichers oder Schlüssels verwendet haben. Weitere Informationen finden Sie in der apksigner-Dokumentation oder bei Ausführen von apksigner sign --help über die Befehlszeile.
    • Bessere Fehlermeldung, wenn apksigner eine JAR-Signatur aufgrund eines nicht unterstützten Hash- oder Signaturalgorithmus nicht überprüfen kann. (Problem 63525618)
  • Unterstützung für den AAPT2-Daemonmodus bei Verwendung des Android-Plug-ins für Gradle3.0.0-beta7 oder höher.

Neben allgemeinen Fehlerkorrekturen wird in dieser Version apksigner in das Build-Tools-Paket zurückversetzt, das in Version 26.0.0 irrtümlicherweise entfernt wurde. Außerdem enthält sie die folgenden Updates für das Tool:

  • PKCS #11-Unterstützung hinzugefügt, um die Signatur mit Schlüsseln zu ermöglichen, die auf sicherer Hardware gespeichert sind. (Problem 37140484)
  • Unterstützung für das Laden zusätzlicher JCA-Anbieter vor der Signatur hinzugefügt.
  • Bei der Überprüfung von APKs wird android:targetSandboxVersion berücksichtigt.
  • Bei der Signatur werden APKs mit Dateien abgelehnt, die im Dateinamen die Sonderzeichen „CR“ (Zeilenumbruch), „LF“ (Zeilenvorschub) oder „NUL“ (Null) enthalten.
  • apksigner.bat verarbeitet jetzt Parameter mit Leerzeichen richtig. (Problem 38132450)
  • Ein Fehler bei der JAR-Signaturprüfung wurde behoben, der auftrat, wenn für denselben Eintrag in MANIFEST.MF mehrere Digests vorhanden waren. (Problem 38497270)

Es wurde die Unterstützung für die Erstellung mit API-Level 26 hinzugefügt und allgemeine Fehler wurden behoben.

Änderungen an apksigner:

  • Der Parameter --in wurde zur Symmetrie mit dem vorhandenen Parameter --out hinzugefügt.
  • Wenn Sie das Schlüsselpasswort nicht mit --key-pass angeben, verwendet apksigner das Schlüsselspeicherpasswort als Schlüsselpasswort. Wenn für den Schlüssel jedoch ein anderes Passwort erforderlich ist, werden Sie jetzt aufgefordert, das Schlüsselpasswort über die Befehlszeile einzugeben. (Problem 37134986)
  • Kompatibilität mit jarsigner für nicht ASCII-Passwörter hinzugefügt. (Problem 37135737)

Fehlerkorrekturen

Diese Version enthält Fehlerkorrekturen und die folgenden Verbesserungen für apksigner:

  • Unterstützung für APKs mit verschleierten JAR-Eintragsnamen.
  • --print-certs Mit diesem Schalter werden jetzt auch MD5-Fingerabdrücke ausgegeben.

Fehlerkorrekturen für die Jack-Toolchain:

  • Ein Problem wurde behoben, durch das Jack keine nicht ASCII-kompatiblen Quelldateien unterstützte. (Problem 218892)
  • Ein Problem wurde behoben, das bei einigen Kompilierungen zu einem AssertionError führte. (Problem 208414)
  • apksigner wurde hinzugefügt, ein APK-Signaturtool, das jarsigner ersetzt. Standardmäßig signiert apksigner APKs mit dem herkömmlichen JAR-Signaturschema (von jarsigner verwendet) und dem APK Signature Scheme V2, das in Android 7.0 (API-Level 24) eingeführt wurde. Jede Änderung an einem mit dem APK-Signaturschema v2 signierten APK macht dessen Signatur ungültig. Daher muss die APK-Nachbearbeitung, z. B. zipalign, vor dem Aufruf von apksigner erfolgen, nicht danach. Das Aufrufen von zipalign vor apksigner funktioniert einwandfrei, da apksigner die APK-Ausrichtung und -Komprimierung beibehält (im Gegensatz zu jarsigner).
  • Behebung von Problemen in der RenderScript-Unterstützungsbibliothek auf ARM64-Geräten.
  • Behebung von Problemen in der RenderScript-Unterstützungsbibliothek auf bestimmten Jelly Bean-Geräten.
  • Unterstützung von renderscriptTargetAPI 21+ bei Verwendung des Android-Plug-ins für Gradle, Version 2.1.0 und höher
  • Die Leistung beim Zusammenführen mit dem Tool dx wurde verbessert.
  • Probleme im RenderScript-Compiler für Windows wurden behoben.

Probleme mit den RenderScript-Tools wurden behoben.

Unterstützung für Android 6.0 (API-Level 23) hinzugefügt.

Kompatibilitätsprobleme mit RenderScript-Kerneln auf Geräten mit Android 4.4 (API-Ebene 19) bis Android 4.1 (API-Ebene 16) behoben

Unterstützung für Android 5.1 (API-Level 22) hinzugefügt.

Problem beim Erstellen von Datenlayouts im 32-Bit-Modus behoben

Probleme mit Multidex-Scripts wurden behoben.

Unterstützung für Multidex-Dateien für APKs und Jack-Unterstützung hinzugefügt, um das Limit von 64 K Methodenreferenzen zu überwinden.

Vollständige Updates für Eclipse ADT, um Stabilitätsprobleme auf Windows-Plattformen zu beheben.

Erste Updates für Eclipse ADT unter Windows. Verwenden Sie Version 21.0.2.

Allgemeine Hinweise:
  • Unterstützung für Android 5.0 (API-Level 21) hinzugefügt.
  • RenderScript unterstützt jetzt einen nahtlosen 32/64-Bit-Betrieb für API-Level 21 und höher.
  • Problem mit dem Gradle-Buildsystem bei Verwendung des JaCoCo-Plug-ins behoben (Problem 69174)
  • Die Option input-list wurde hinzugefügt, um lange Befehlszeilen unter Windows zu verarbeiten.
Allgemeine Hinweise:
  • Unterstützung für Android Wear hinzugefügt.
Allgemeine Hinweise:
  • zipalign wurde den Build-Tools hinzugefügt.
  • aapt wurde so geändert, dass XML-Dateien, die nicht kompiliert werden können, ignoriert werden.

Ein Problem mit der RenderScript-Unterstützung wurde behoben.

Behobene Probleme beim RenderScript-Build:
  • Ein Problem mit der RenderScript-Bitcode-Codierung wurde behoben. (Problem 64775)
  • Behebung eines Problems mit fehlenden mathematischen Symbolen in RenderScript (Problem 64110)

Verschiedene Build-Probleme behoben:
  • Die Unterstützung für die Kompilierung von RenderScript im NDK-Modus mit Gradle wurde behoben.
  • Das BufferOverflowException-Problem im DX-Build wurde behoben. (Problem 61710)

Unterstützung für Buildziele für Android 4.4 (API-Level 19) hinzugefügt.

Mehrere kleinere Build-Probleme wurden behoben.

Problem mit dem RenderScript-Unterstützungsmodus behoben.

Unterstützung für Buildziele für Android 4.3 (API-Level 18) hinzugefügt.

Erste Version

Allgemeine Hinweise:
  • Unterstützung für Buildziele für Android 4.2 (API-Level 17)
  • Die buildspezifischen Komponenten des Android SDK wurden von der Komponente „Plattformtools“ getrennt, sodass die Buildtools unabhängig von den Komponenten der integrierten Entwicklungsumgebung (IDE) aktualisiert werden können.