เครื่องมือสร้าง Android SDK เป็นคอมโพเนนต์ของ Android SDK ที่ต้องใช้ในการสร้างแอป Android ซึ่งติดตั้งอยู่ในไดเรกทอรี <sdk>/build-tools/
คุณควรอัปเดตคอมโพเนนต์เครื่องมือสร้างอยู่เสมอโดยดาวน์โหลดเวอร์ชันล่าสุดโดยใช้ Android SDK Manager หากคุณใช้ปลั๊กอิน Android สำหรับ Gradle 3.0.0 ขึ้นไป โปรเจ็กต์จะใช้เครื่องมือสร้างเวอร์ชันเริ่มต้นที่ปลั๊กอินระบุโดยอัตโนมัติ หากต้องการใช้เครื่องมือสร้างเวอร์ชันอื่น ให้ระบุโดยใช้ buildToolsVersion
ใน build.gradle
ของโมดูล ดังนี้
Groovy
android { buildToolsVersion "34.0.0" ... }
Kotlin
android { buildToolsVersion = "34.0.0" ... }
การแก้ไข
ส่วนด้านล่างนี้จะแสดงหมายเหตุเกี่ยวกับรุ่นของเครื่องมือสร้าง หากต้องการดูว่าเวอร์ชันใดของเครื่องมือสร้างที่พร้อมให้ใช้งานใน SDK ของคุณ โปรดดูรายการแพ็กเกจที่ติดตั้งใน Android SDK Manager
เครื่องมือสร้างเวอร์ชัน เวอร์ชัน 34.0.0 RC3 (เมษายน 2023)
การแก้ไขข้อบกพร่องและการปรับปรุงทั่วไป
เครื่องมือสร้าง เวอร์ชัน 34.0.0 (กุมภาพันธ์ 2023)
การอัปเดตนี้รวมถึงการรองรับการสร้างด้วย API ตัวอย่างของ Android 14
เครื่องมือสร้าง เวอร์ชัน 33.0.2 (กุมภาพันธ์ 2023)
การอัปเดตนี้แก้ไขปัญหาต่อไปนี้
-
core-lambda-stubs.jar
เวอร์ชัน 33.0.0 ใน macOS ต่างจาก Linux/Windows (ดูปัญหา #237299698)
เครื่องมือสร้าง เวอร์ชัน 33.0.1 (พฤศจิกายน 2022)
การอัปเดตนี้แก้ไขปัญหาต่อไปนี้
- AIDL ไม่สำเร็จด้วยเครื่องมือสร้าง 33.0.0 (ดูปัญหา #236167971)
เครื่องมือสร้าง เวอร์ชัน 30.0.0 rc4 (พฤษภาคม 2020)
การอัปเดตนี้รองรับการสร้างด้วย API พรีวิวของ Android 11
เครื่องมือสร้าง เวอร์ชัน 29.0.3 (มกราคม 2020)
การอัปเดตนี้แก้ไขปัญหาต่อไปนี้
- ปัญหาการสร้างกับ Renderscript ใน macOS Catalina (ดูปัญหา #142590626)
เครื่องมือสร้างรุ่น เวอร์ชัน 29.0.2 (สิงหาคม 2019)
การอัปเดตนี้แก้ไขปัญหาต่อไปนี้
เครื่องมือสร้าง เวอร์ชัน 29.0.0 (มิถุนายน 2019)
การอัปเดตนี้รองรับการสร้างด้วย API ระดับ 29
เครื่องมือสร้าง เวอร์ชัน 28.0.3 (กันยายน 2018)
การอัปเดตนี้รองรับปลั๊กอิน Android Gradle 3.2.0 และแก้ไขปัญหาต่อไปนี้
-
แก้ไขข้อบกพร่องของไลบรารี JNI ที่ทำให้แอปขัดข้องเมื่อเรียกใช้
androidx.renderscript.RenderScript.create()
-
แก้ไขข้อบกพร่องที่ทําให้เกิดข้อผิดพลาด
Program type already present
ในบิลด์เมื่อใช้ทรัพยากรandroidx.annotation
เครื่องมือสร้างรุ่น เวอร์ชัน 28.0.2 (สิงหาคม 2018)
รวม D8 เวอร์ชันล่าสุดด้วย
เครื่องมือสร้าง เวอร์ชัน 27.0.3 (ธันวาคม 2017)
ปรับปรุงการรองรับการคอมไพล์ lambdas เมื่อคุณเปิดใช้ฟีเจอร์ภาษา Java 8
เครื่องมือสร้าง เวอร์ชัน 27.0.2 (ธันวาคม 2017)
ปรับปรุงการรองรับฟีเจอร์ภาษาของ Java 8
เครื่องมือสร้างรุ่น เวอร์ชัน 27.0.1 (พฤศจิกายน 2017)
เพิ่มการรองรับ Multidex เดิมสำหรับ APK การทดสอบ (ปัญหา #37324038)
เครื่องมือสร้าง เวอร์ชัน 26.0.2 (ตุลาคม 2017)
นอกเหนือจากการแก้ไขข้อบกพร่องทั่วไปแล้ว เวอร์ชันนี้ยังมีการอัปเดตต่อไปนี้ด้วย
- การอัปเดต
apksigner
เป็นเวอร์ชัน 0.8 มีดังนี้- ความเข้ากันได้กับ Java 9 (ปัญหา #37137869)
-
พารามิเตอร์
--pass-encoding
ใหม่สำหรับจัดการคีย์สโตร์และคีย์ที่เข้ารหัสโดยใช้รหัสผ่านที่ไม่ใช่ ASCII หากคุณเปลี่ยนไปใช้ Java 9 และapksigner
ถอดรหัสคีย์สโตร์หรือคีย์ไม่ได้ ให้ใช้พารามิเตอร์นี้เพื่อระบุการเข้ารหัสอักขระที่คุณใช้สร้างคีย์สโตร์หรือคีย์ ดูข้อมูลเพิ่มเติมได้ที่apksigner
Documentation หรือเรียกใช้apksigner sign --help
จากบรรทัดคำสั่ง -
ข้อความแสดงข้อผิดพลาดที่ดีขึ้นเมื่อ
apksigner
ยืนยันลายเซ็น JAR ไม่ได้เนื่องจากมี Digest หรืออัลกอริทึมลายเซ็นที่ไม่รองรับ (ปัญหา #63525618)
-
รองรับโหมด Daemon ของ AAPT2 เมื่อใช้ปลั๊กอิน Android สำหรับ Gradle
3.0.0-beta7
ขึ้นไป
เครื่องมือสร้าง เวอร์ชัน 26.0.1 (กรกฎาคม 2017)
นอกเหนือจากการแก้ไขข้อบกพร่องทั่วไปแล้ว เวอร์ชันนี้ยังคืนค่า apksigner
ให้กับแพ็กเกจเครื่องมือสร้าง (มีการละเว้นไปโดยไม่ได้ตั้งใจในเวอร์ชัน 26.0.0) และมีการอัปเดตเครื่องมือต่อไปนี้ด้วย
- เพิ่มการสนับสนุน PKCS #11 เพื่ออนุญาตให้เซ็นด้วยคีย์ที่อยู่ในฮาร์ดแวร์ที่ปลอดภัย (ปัญหา #37140484)
- เพิ่มการรองรับการโหลดผู้ให้บริการ JCA เพิ่มเติมก่อนลงนาม
- ปฏิบัติตาม
android:targetSandboxVersion
เมื่อยืนยัน APK - เมื่อลงนาม ให้ปฏิเสธ APK ที่มีไฟล์ที่มีคำว่า "CR" (อักขระขึ้นบรรทัดใหม่) "LF" (ฟีดบรรทัด) หรือ "NUL" (null) ในชื่อไฟล์
- แก้ไข
apksigner.bat
ให้จัดการพารามิเตอร์ที่มีเว้นวรรคได้อย่างถูกต้อง (ปัญหา #38132450) - แก้ไขข้อบกพร่องในการยืนยันลายเซ็น JAR เมื่อมีการรวมข้อมูลเมตาหลายรายการสำหรับรายการเดียวกันใน
MANIFEST.MF
(ปัญหา #38497270)
เครื่องมือสร้างเวอร์ชัน 26.0.0 (มิถุนายน 2017)
เพิ่มการรองรับการสร้างด้วย API ระดับ 26 และมีการแก้ไขข้อบกพร่องทั่วไป
เครื่องมือสร้าง เวอร์ชัน 25.0.3 (เมษายน 2017)
การอัปเดตสำหรับ apksigner
- เพิ่มพารามิเตอร์
--in
สำหรับสมมาตรซึ่งมีพารามิเตอร์--out
ที่มีอยู่แล้ว - หากคุณไม่ได้ระบุรหัสผ่านคีย์โดยใช้
--key-pass
apksigner
จะใช้รหัสผ่านคีย์สโตร์เป็นรหัสผ่านคีย์ แต่หากคีย์ต้องใช้รหัสผ่านอื่น คุณจะได้รับข้อความแจ้งให้ป้อนรหัสผ่านของคีย์จากบรรทัดคำสั่ง (ปัญหา #37134986) - เพิ่มความเข้ากันได้กับ
jarsigner
สำหรับรหัสผ่านที่ไม่ใช่ ASCII (ปัญหา #37135737)
เครื่องมือสร้าง เวอร์ชัน 25.0.2 (ธันวาคม 2016)
แก้ไขข้อบกพร่อง
เครื่องมือสร้าง เวอร์ชัน 25.0.1 (พฤศจิกายน 2016)
รุ่นนี้มีการแก้ไขข้อบกพร่องและการปรับปรุงapksigner
ต่อไปนี้
- รองรับ APK ที่มีชื่อรายการ JAR ที่มีการสร้างความสับสน
- ตอนนี้สวิตช์
--print-certs
จะทิ้งลายนิ้วมือ MD5 ด้วย
เครื่องมือสร้าง เวอร์ชัน 25.0.0 (ตุลาคม 2016)
การแก้ไขข้อบกพร่องสำหรับชุดเครื่องมือ Jack
- แก้ปัญหาที่ Jack รองรับไฟล์ต้นฉบับที่ไม่ใช่ ASCII (ปัญหา #218892)
- แก้ปัญหาที่ทำให้เกิด
AssertionError
ในระหว่างการรวมบางรายการแล้ว (ปัญหา #208414)
เครื่องมือสร้าง เวอร์ชัน 24.0.3 (กันยายน 2016)
- เพิ่ม
apksigner
ซึ่งเป็นเครื่องมือสำหรับรับรอง APK ที่จะมาแทนที่jarsigner
โดยค่าเริ่มต้นapksigner
จะรับรอง APK โดยใช้รูปแบบการลงนาม JAR แบบเดิม (ใช้โดยjarsigner
) และ APK Signature Scheme v2 ที่เปิดตัวใน Android 7.0 (API ระดับ 24) การแก้ไข APK ที่ลงนามด้วย APK Signature Scheme v2 จะทําให้ลายเซ็นของ APK นั้นใช้งานไม่ได้ ดังนั้น การประมวลผลภายหลัง APK เช่นzipalign
ต้องดำเนินการก่อนการเรียกใช้apksigner
ไม่ใช่หลัง การเรียกใช้zipalign
ก่อนapksigner
จะทํางานได้เพราะapksigner
จะรักษาการจัดแนวและการบีบอัด APK ไว้ (ต่างจากjarsigner
)
เครื่องมือสร้าง เวอร์ชัน 23.0.3 (มีนาคม 2016)
- แก้ไขปัญหาใน RenderScript ไลบรารีการสนับสนุนในอุปกรณ์ arm64
- แก้ไขปัญหาในไลบรารีสนับสนุน RenderScript ในอุปกรณ์ Jelly Bean บางรุ่น
- รองรับ
renderscriptTargetAPI 21+
เมื่อใช้ Android Plugin for Gradle, Revision 2.1.0 ขึ้นไป
เครื่องมือสร้าง เวอร์ชัน 23.0.2 (พฤศจิกายน 2015)
- ปรับปรุงประสิทธิภาพการรวมของเครื่องมือ
dx
- แก้ไขปัญหาในคอมไพเลอร์ RenderScript สำหรับ Windows
เครื่องมือสร้างรุ่น เวอร์ชัน 23.0.1 (ตุลาคม 2015)
แก้ไขปัญหาในเครื่องมือ RenderScript
เครื่องมือสร้าง เวอร์ชัน 23.0.0 (สิงหาคม 2015)
เพิ่มการรองรับรุ่น Android 6.0 (API ระดับ 23)
เครื่องมือสร้าง เวอร์ชัน 22.0.1 (มีนาคม 2015)
แก้ไขปัญหาความเข้ากันได้กับเคอร์เนล RenderScript ในอุปกรณ์ Android 4.4 (API ระดับ 19) ถึง Android 4.1 (API ระดับ 16)
เครื่องมือสร้างเวอร์ชัน เวอร์ชัน 22.0.0 (มีนาคม 2015)
เพิ่มการรองรับ Android 5.1 (API ระดับ 22)
เครื่องมือสร้าง เวอร์ชัน 21.1.2 (กุมภาพันธ์ 2015)
แก้ไขปัญหาการสร้างเลย์เอาต์ข้อมูลในโหมด 32 บิต
เครื่องมือสร้างรุ่น เวอร์ชัน 21.1.1 (พฤศจิกายน 2014)
แก้ไขปัญหาสคริปต์ MultiDex
เครื่องมือสร้าง ฉบับที่ 21.1 (ตุลาคม 2014)
เพิ่มการรองรับไฟล์ MultiDex สำหรับ APK และการรองรับ Jack เพื่อจัดการกับขีดจำกัดการอ้างอิงเมธอด 64 KB
เครื่องมือสร้าง เวอร์ชัน 21.0.2 (ตุลาคม 2014)
อัปเดต Eclipse ADT ให้เสร็จสมบูรณ์เพื่อแก้ปัญหาความไม่เสถียรในแพลตฟอร์ม Windows
เครื่องมือสร้าง เวอร์ชัน 21.0.1 (ตุลาคม 2014)
การอัปเดตครั้งแรกสําหรับ Eclipse ADT ใน Windows โปรดใช้เวอร์ชัน 21.0.2
เครื่องมือสร้าง เวอร์ชัน 21.0.0 (ตุลาคม 2014)
- หมายเหตุทั่วไป
-
- เพิ่มการรองรับ Android 5.0 (API ระดับ 21)
- ตอนนี้ RenderScript รองรับการทำงานแบบ 32/64 บิตอย่างราบรื่นสำหรับ API ระดับ 21 ขึ้นไป
- แก้ปัญหาเกี่ยวกับระบบการบิลด์ Gradle เมื่อใช้ปลั๊กอิน JaCoCo (ปัญหา 69174)
- เพิ่มตัวเลือก input-list สำหรับใช้กับบรรทัดคำสั่งที่ยาวใน Windows
เครื่องมือสร้างรุ่น เวอร์ชัน 20.0.0 (มิถุนายน 2014)
- หมายเหตุทั่วไป
-
- เพิ่มการรองรับ Android Wear
เครื่องมือสร้างเวอร์ชัน 19.1.0 (พฤษภาคม 2014)
- หมายเหตุทั่วไป
-
- เพิ่ม
zipalign
ลงในเครื่องมือสร้าง - แก้ไข
aapt
เพื่อละเว้นไฟล์ XML ที่คอมไพล์ไม่สำเร็จ
- เพิ่ม
เครื่องมือสร้าง เวอร์ชัน 19.0.3 (มีนาคม 2014)
แก้ไขปัญหาการรองรับ RenderScript
เครื่องมือสร้าง เวอร์ชัน 19.0.2 (กุมภาพันธ์ 2014)
- แก้ไขปัญหาการสร้าง RenderScript แล้ว:
-
- แก้ไขปัญหาเกี่ยวกับการเข้ารหัสบิตโค้ดของ RenderScript (ปัญหา 64775)
- แก้ไขปัญหาเกี่ยวกับ RenderScript ที่ขาดสัญลักษณ์ทางคณิตศาสตร์ (ข้อบกพร่อง 64110)
เครื่องมือสร้างเวอร์ชัน 19.0.1 (ธันวาคม 2013)
- แก้ไขปัญหาเบ็ดเตล็ดเกี่ยวกับบิลด์:
-
- แก้ไขการรองรับการคอมไพล์ RenderScript ในโหมด NDK ด้วย Gradle
- แก้ไขปัญหา
BufferOverflowException
ในบิลด์ dx (ปัญหา 61710)
เครื่องมือสร้าง ฉบับที่ 19 (ตุลาคม 2013)
เพิ่มการรองรับเป้าหมายการสร้าง Android 4.4 (API ระดับ 19)
เครื่องมือสร้าง เวอร์ชัน 18.1.1 (กันยายน 2013)
แก้ไขปัญหาเล็กน้อยหลายประการเกี่ยวกับบิลด์
เครื่องมือสร้าง เวอร์ชัน 18.1.0 (กันยายน 2013)
แก้ไขปัญหาเกี่ยวกับโหมดการสนับสนุน RenderScript
เครื่องมือสร้างเวอร์ชัน 18.0.1 (กรกฎาคม 2013)
เพิ่มการรองรับเป้าหมายการสร้าง Android 4.3 (API ระดับ 18)
เครื่องมือสร้าง ฉบับที่ 17 (พฤษภาคม 2013)
การเผยแพร่ครั้งแรก
- หมายเหตุทั่วไป
-
- รองรับการกำหนดเป้าหมายการสร้าง Android 4.2 (API ระดับ 17)
- แยกคอมโพเนนต์เฉพาะบิลด์ของ Android SDK ออกจากคอมโพเนนต์ platform-tools เพื่อให้อัปเดตเครื่องมือสร้างได้โดยไม่ขึ้นอยู่กับคอมโพเนนต์สภาพแวดล้อมการพัฒนาแบบรวม (IDE)