Trình bổ trợ Android cho Gradle 8.7.0 (tháng 10 năm 2024)

Trình bổ trợ Android cho Gradle 8.7.0 là một bản phát hành lớn bao gồm nhiều tính năng và điểm cải thiện mới.

Khả năng tương thích

Cấp độ API tối đa mà trình bổ trợ Android Gradle 8.7 hỗ trợ là cấp độ API 35. Sau đây là thông tin khác về khả năng tương thích:

Phiên bản tối thiểu Phiên bản mặc định Ghi chú
"Gradle" 8.9 8.9 "Để tìm hiểu thêm, hãy xem phần cập nhật Gradle."
Công cụ tạo SDK 34.0.0 34.0.0 Cài đặt hoặc định cấu hình Công cụ tạo SDK.
NDK Không áp dụng 27.0.12077973 "Cài đặt hoặc định cấu hình một phiên bản NDK khác."
JDK 17 17 "Để tìm hiểu thêm, hãy xem phần cài đặt phiên bản JDK."

Thay đổi về hành vi của trình tìm lỗi mã nguồn

Kể từ Trình bổ trợ Android cho Gradle 8.7.0-alpha08, nếu có LintError khi chạy lint bằng Gradle, thì tác vụ phân tích lint sẽ gửi một ngoại lệ. Thay đổi này ngăn các lỗi hiếm gặp được lưu vào bộ nhớ đệm của bản dựng.

Rất tiếc, thay đổi này làm gián đoạn quá trình tạo bản dựng cho các dự án có các thực thể LintError thực sự trong tệp đường cơ sở lint. Thông báo lỗi chứa thông tin về những lần kiểm tra lint đang gây ra vấn đề. Trong một số trường hợp, việc cập nhật phần phụ thuộc thư viện tương ứng có thể giải quyết vấn đề. Nếu không, bạn có thể tắt quy trình kiểm tra lint có vấn đề cho đến khi tác giả thư viện khắc phục được vấn đề.

Vấn đề đã khắc phục

Trình bổ trợ Android cho Gradle 8.7.0

Vấn đề đã khắc phục
Trình bổ trợ Android cho Gradle
AGP nên tuyên bố rằng họ hỗ trợ API 35 sắp ra mắt
AGP 8.5: Nhiều tác vụ "mergeDebugResources" khác được chạy, làm chậm quá trình tạo bản dựng
Đặt ndk 27 làm NDK mặc định trong AGP.
AGP nên tuyên bố rằng họ hỗ trợ API 35 sắp ra mắt
AGP nên tuyên bố rằng họ hỗ trợ API 35 sắp ra mắt
Không chạy được tính năng tìm lỗi mã nguồn Android do NoSuchFileException
BuildType#initWith sao chép khối xử lý hậu kỳ nhưng không áp dụng cấu hình proguard
Không thể hợp nhất cho các thẻ foregroundServiceType
Không chạy được tính năng tìm lỗi mã nguồn Android do NoSuchFileException
Tìm lỗi mã nguồn
Lint phải kiểm tra các đối tượng không hợp lệ được dùng làm ViewGroup
"android:host is missing" (thiếu android:host) đối với các URI có máy chủ lưu trữ rỗng
KtAnalysisSessionProvider không tương thích với các quy trình kiểm tra tìm lỗi mã nguồn được giới thiệu trong phiên bản 8.7.0-alpha04
"Dương tính giả" WrongConstant khi sử dụng PackageManager.ResolveInfoFlags.of với Kotlin

Trình bổ trợ Android cho Gradle 8.7.1

Vấn đề đã khắc phục
Trình bổ trợ Android cho Gradle
Tài liệu agp có rất nhiều TBD
Tìm lỗi mã nguồn
AGP 8.6.1: Hồi quy – Lỗi lint WrongConstant khi sử dụng [Int].toLong() bên trong @LongDef trong Kotlin
Lỗi "Bạn phải chỉ định ít nhất một máy chủ lưu trữ" khi đặt lược đồ bộ lọc ý định http hoặc https

Trình bổ trợ Android cho Gradle 8.7.2

Vấn đề đã khắc phục
Tìm lỗi mã nguồn
AGP 8.7.0 – Lỗi dương tính giả của công cụ tìm lỗi mã nguồn RestrictedApi trên NavOptionsBuilder.popUpTo
Trình rút gọn (R8)
[R8 8.6.27] Triển khai phương thức được thay thế bằng "throw null"
Các tệp proguard mặc định của Android sẽ đưa ra cảnh báo khi được dùng với phiên bản R8 hiện tại
MissingStartupProfileItemsDiagnostic khiến ứng dụng gặp sự cố với lỗi hết bộ nhớ nếu thông báo quá lớn

Trình bổ trợ Android cho Gradle 8.7.3

Vấn đề đã khắc phục
Tìm lỗi mã nguồn
Nhiều cảnh báo về phương thức API phân tích bị thiếu khi chạy lint
Kiểm tra lint nhận diện sai android.permission.SCHEDULE_EXACT_ALARM chỉ được cấp cho các ứng dụng hệ thống