ปลั๊กอิน Android Gradle 3.2.0 (กันยายน 2018)
ปลั๊กอิน Android เวอร์ชันนี้ต้องการสิ่งต่อไปนี้
เวอร์ชันต่ำสุด | เวอร์ชันเริ่มต้น | หมายเหตุ | |
---|---|---|---|
เกรเดิล | 4.6 | 4.6 | ดูข้อมูลเพิ่มเติมได้ที่การอัปเดต Gradle |
เครื่องมือสร้าง SDK | 28.0.3 | 28.0.3 | ติดตั้งหรือกำหนดค่าเครื่องมือสร้าง SDK |
3.2.1 (ตุลาคม 2018)
การอัปเดตนี้ไม่จําเป็นต้องระบุเวอร์ชันสําหรับ SDK Build อีกต่อไป เครื่องมือ ตอนนี้ปลั๊กอิน Android Gradle ใช้เวอร์ชัน 28.0.3 โดยค่าเริ่มต้น
ฟีเจอร์ใหม่
-
รองรับการสร้าง Android App Bundle: App Bundle เป็นการอัปโหลดใหม่ ที่รวมโค้ดและทรัพยากรทั้งหมดของแอป เลื่อนการสร้าง APK และลงชื่อเข้าใช้ Google Play Store ตอนนี้คุณไม่ได้อยู่ ต้องสร้าง รับรอง และจัดการ APK หลายรายการ อีกทั้งผู้ใช้จะได้รับการดาวน์โหลดขนาดเล็กลง ที่ปรับให้เหมาะกับอุปกรณ์อยู่เสมอ หากต้องการดูข้อมูลเพิ่มเติม โปรดอ่าน เกี่ยวกับ Android App Bundle
-
รองรับความเร็วบิลด์ที่เพิ่มขึ้นเมื่อใช้ตัวประมวลผลคำอธิบายประกอบ
AnnotationProcessorOptions
DSL ขยายการใช้งานแล้วCommandLineArgumentProvider
ซึ่งให้คุณหรือผู้เขียนผู้ประมวลผลข้อมูลคำอธิบายประกอบสามารถใส่คำอธิบายประกอบ อาร์กิวเมนต์สำหรับตัวประมวลผลที่ใช้ คำอธิบายประกอบประเภทพร็อพเพอร์ตี้บิลด์ที่เพิ่มขึ้น การใช้หมายเหตุเหล่านี้จะช่วยปรับปรุงความถูกต้องและประสิทธิภาพของ บิลด์เพิ่มเติมและแคชที่สะอาด หากต้องการดูข้อมูลเพิ่มเติม โปรดอ่าน ส่งอาร์กิวเมนต์ไปยังตัวประมวลผลคำอธิบายประกอบ -
เครื่องมือย้ายข้อมูลสำหรับ AndroidX: เมื่อใช้ปลั๊กอิน Android Gradle 3.2.0 กับ Android 3.2 ขึ้นไป คุณย้ายข้อมูลในเครื่องของโปรเจ็กต์และ Maven ได้ ทรัพยากร Dependency เพื่อใช้ไลบรารี AndroidX ใหม่โดยเลือก Refactor > ย้ายข้อมูลไปยัง AndroidX จากแถบเมนู การใช้เครื่องมือย้ายข้อมูลนี้ยังตั้งค่า ค่าสถานะต่อไปนี้ไปยัง
true
ในไฟล์gradle.properties
ของคุณ-
android.useAndroidX
: เมื่อตั้งค่าเป็นtrue
ปลั๊กอิน Android จะใช้ ไลบรารี AndroidX ที่เหมาะสมแทนไลบรารีการสนับสนุน เมื่อแฟล็กนี้ ไม่ได้ระบุ ปลั๊กอินจะตั้งค่าเป็นfalse
โดยค่าเริ่มต้น -
android.enableJetifier
: เมื่อตั้งค่าเป็นtrue
ปลั๊กอิน Android ย้ายไลบรารีของบุคคลที่สามที่มีอยู่ไปใช้ AndroidX โดยอัตโนมัติภายในวันที่ การเขียนไบนารีใหม่ เมื่อไม่มีการระบุแฟล็กนี้ ปลั๊กอินจะมีชุด เป็นfalse
โดยค่าเริ่มต้น คุณจะตั้งค่าสถานะนี้เป็นtrue
ได้ในขณะที่android.useAndroidX
ได้รับการตั้งค่าเป็นtrue
ด้วย มิฉะนั้นคุณจะได้รับข้อผิดพลาดของรุ่นหากต้องการเรียนรู้เพิ่มเติม โปรดอ่านภาพรวมของ AndroidX
-
-
เครื่องมือย่อโค้ดแบบใหม่ R8: R8 เป็นเครื่องมือใหม่สำหรับการย่อโค้ดและการสร้างความสับสน ที่มาแทน ProGuard คุณสามารถเริ่มใช้เวอร์ชันตัวอย่างของ R8 ได้โดย โดยรวมค่าต่อไปนี้ในไฟล์
gradle.properties
ของโปรเจ็กต์android.enableR8 = true
android.enableR8 = true
การเปลี่ยนแปลงลักษณะการทำงาน
-
เปิดใช้การแยกข้อมูลด้วย D8 โดยค่าเริ่มต้นแล้ว
-
ตอนนี้ AAPT2 อยู่ในที่เก็บ Maven ของ Google แล้ว หากต้องการใช้ AAPT2 โปรดตรวจสอบว่าคุณ มีทรัพยากร Dependency
google()
ในbuild.gradle
ตามที่แสดงด้านล่างbuildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
-
ตอนนี้ Multidex เนทีฟเปิดใช้โดยค่าเริ่มต้นแล้ว Android เวอร์ชันก่อนหน้า Studio ได้เปิดใช้มัลติเดกซ์แบบเนทีฟเมื่อทำให้แอปเวอร์ชันที่แก้ไขข้อบกพร่องใช้งานได้ อุปกรณ์ที่ใช้ Android API ระดับ 21 ขึ้นไป ในตอนนี้ ไม่ว่าคุณจะกำลังปรับใช้ อุปกรณ์หรือการสร้าง APK สำหรับการเปิดตัว ปลั๊กอิน Android Gradle เปิดใช้งาน Multidex แบบเนทีฟสำหรับทุกโมดูลที่ตั้งค่าไว้
minSdkVersion=21
ขึ้นไป -
ตอนนี้ปลั๊กอินมีการบังคับใช้เวอร์ชันขั้นต่ำของปลั๊กอิน Protobuf (0.8.6) ปลั๊กอิน Kotlin (1.2.50) และปลั๊กอิน Crashlytics (1.25.4)
-
ตอนนี้ปลั๊กอินโมดูลฟีเจอร์
com.android.feature
บังคับให้ใช้เฉพาะตัวอักษร ตัวเลข และขีดล่างเท่านั้นเมื่อระบุ ชื่อโมดูล เช่น หากชื่อโมดูลฟีเจอร์มีขีดกลาง คุณจะเห็นข้อผิดพลาดในการสร้าง ลักษณะการทำงานนี้จะเหมือนกับลักษณะการทำงานของฟีเจอร์แบบไดนามิก ปลั๊กอิน
การแก้ไขข้อบกพร่อง
- ขณะนี้ JavaCompile เก็บแคชได้ในโปรเจ็กต์ที่มีการเชื่อมโยงข้อมูล (ปัญหา #69243050)
- หลีกเลี่ยงการคอมไพล์ที่ดีขึ้นสำหรับโมดูลไลบรารีที่มีการเชื่อมโยงข้อมูล (ปัญหา #77539932)
- คุณเปิดใช้อีกครั้งได้แล้วในตอนนี้ การกำหนดค่าตามคำขอ ถ้าคุณปิดใช้วิธีนี้ในเวอร์ชันก่อนหน้านี้เนื่องจาก ข้อผิดพลาดในการสร้างที่คาดการณ์ไม่ได้ (ปัญหา #77910727)