ปลั๊กอิน Android Gradle 8.8.0 (มกราคม 2025)

ปลั๊กอิน Android Gradle 8.8.0 เป็นรุ่นหลักที่มีฟีเจอร์และการปรับปรุงใหม่ๆ มากมาย

ความเข้ากันได้

ระดับ API สูงสุดที่ปลั๊กอิน Android Gradle 8.8 รองรับคือระดับ API 35 ข้อมูลอื่นๆ เกี่ยวกับความเข้ากันได้มีดังนี้

เวอร์ชันขั้นต่ำ เวอร์ชันเริ่มต้น หมายเหตุ
Gradle 8.10.2 8.10.2 ดูข้อมูลเพิ่มเติมได้ที่การอัปเดต Gradle
เครื่องมือสร้าง SDK 35.0.0 35.0.0 ติดตั้งหรือกำหนดค่าเครื่องมือสร้าง SDK
NDK ไม่มี 27.0.12077973 ติดตั้งหรือกำหนดค่า NDK เวอร์ชันอื่น
JDK 17 17 ดูข้อมูลเพิ่มเติมได้ที่การตั้งค่าเวอร์ชัน JDK

ปัญหาที่แก้ไขแล้ว

ปลั๊กอิน Android Gradle 8.8.0

ปัญหาที่แก้ไขแล้ว
ปลั๊กอิน Android Gradle
พิจารณาประเภทอินพุตของคำอธิบายประกอบสำหรับ JacocoTransform เป็น @Classpath
com.android.build.api.variant.GeneratesApk ควรแสดง minSdk
ปลั๊กอิน com.android.settings ไม่รู้จัก targetSdk
SourceDirectories.addGeneratedSourceDirectory ไม่เหมาะกับหลายรูปแบบ
ใช้ Flag เพื่อปิดใช้การตรวจสอบเวอร์ชันขั้นต่ำของ AGP
AGP มีการโต้ตอบที่สับสนกับการกำหนดค่าตัวเลือกคอมไพเลอร์ Kotlin
AGP ควรแสดง BuiltArtifactLoader สำหรับ APK ของโปรเจ็กต์เป้าหมายในโปรเจ็กต์ com.android.test
[AGP] ผู้ให้บริการ Lazy SdkComponents.ndkDirectory สร้างค่าไม่สำเร็จ แต่ API android.ndkDirectory ที่ทำงานอย่างรวดเร็วใช้ได้
ตัวเลือกการสร้าง: เพิ่มตัวเลือก "การกำหนดค่าการเรียกใช้บิลด์" ใหม่และทำให้เป็นค่าเริ่มต้น
ไม่สามารถแก้ไข BuildConfig ในการทดสอบหน่วยเมื่อใช้ android.enableBuildConfigAsBytecode=true
APK ที่สร้างจาก Bundle จะไม่พิจารณาการรองรับ Privacy Sandbox
ปลั๊กอิน com.android.settings ไม่รู้จัก targetSdk
Dexer (D8)
Desugar Library 2.1.0 ใช้กับ AGP 8.5.2 ไม่ได้
Lint
KtAnalysisSessionProvider ไม่เข้ากันกับการตรวจสอบ Lint ที่เปิดตัวใน 8.7.0-alpha04
"ผลบวกลวง" WrongConstant เมื่อใช้ PackageManager.ResolveInfoFlags.of กับ Kotlin
ข้อผิดพลาดของตัวตรวจสอบ "ต้องระบุโฮสต์อย่างน้อย 1 รายการ" เมื่อตั้งค่ารูปแบบ http หรือ https ของ Intent Filter
จัดการคำอธิบายประกอบประเภทการจัดการในกรณีเพิ่มเติมสำหรับการวิเคราะห์ซอร์สโค้ด UnknownNullness
AGP 8.6.1: การถดถอย - Lint WrongConstant ล้มเหลวเมื่อใช้ [Int].toLong() ภายใน @LongDef ใน Kotlin
AGP 8.7.0 - Lint False Positive RestrictedApi on NavOptionsBuilder.popUpTo
WrongConstant lint ปรากฏ 2 ครั้ง
Android Studio ไม่พบคำเตือน "MonochromeLauncherIcon: ไม่ได้กำหนดไอคอนขาวดำ"
AbstractAnnotationDetector ตรวจสอบฟังก์ชัน/ตัวสร้างที่โอเวอร์โหลดไม่ถูกต้อง
Lint ImportAliasTestMode ไม่สร้างนามแฝงการนำเข้าสำหรับฟังก์ชันระดับบนสุด
WrongConstant lint ปรากฏ 2 ครั้ง
คำเตือน Lint ใหม่เกี่ยวกับ ObsoleteSdkInt พร้อม AGP 8.8
การตรวจสอบ Lint ที่ระบุข้อสันนิษฐานที่ผิดพลาด android.permission.SCHEDULE_EXACT_ALARM จะให้สิทธิ์เฉพาะแอปของระบบเท่านั้น
โหมด K2 แสดงคำเตือน RestrictedApi เมื่อใช้ .hasRoute(Route::class) ใน Android Studio
การผสานรวม Lint
ไม่พบงาน Lint Variant หลังจากประเมิน
การตรวจสอบโค้ดล้มเหลวเมื่อนำเข้าไฟล์ AAR ที่มีไฟล์การติดตั้งใช้งาน

ปลั๊กอิน Android Gradle 8.8.1

ปัญหาที่แก้ไขแล้ว
Dexer (D8)
เพิ่ม OpenJDK 23 สำหรับการทดสอบ
Shrinker (R8)
java.lang.AbstractMethodError: Receiver class [...]$$Lambda$[...] does not define or inherit an implementation of the resolved method [...] of interface [...]
NPE ใน Enqueuer ที่เกี่ยวข้องกับบันทึก DexCallSite
R8 8.7.18 ทำให้เกิดข้อยกเว้นตัวชี้ค่าว่างรันไทม์เมื่อเรียกใช้ job?.cancel
java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/LazyThreadSafetyMode
ดูเหมือนว่า Monzo จะใช้เวลาในการกำจัดโค้ดที่ไม่จำเป็นมากเกินไป
AGP 8.8 สร้างรุ่นที่เผยแพร่ไม่สำเร็จ : R8: java.lang.NullPointerException: Cannot read field "b" because the return value of "com.android.tools.r8.internal.BS.a(com.android.tools.r8.internal.cR)" is null`

ปลั๊กอิน Android Gradle 8.8.2

ปัญหาที่แก้ไขแล้ว
ปลั๊กอิน Android Gradle
สคริปต์การเริ่มต้น "C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle" บรรทัดที่ 162
Shrinker (R8)
Proguard ของ Gson ทำงานไม่ถูกต้องหลังจากอัปเกรดเป็น AGP 8.8
java.lang.VerifyError: Verifier rejected class
Leanback ขัดข้องเมื่อย่อขนาดด้วย R8 ที่รวมอยู่ใน AGP 8.10.0-alpha04