Trình bổ trợ Android cho Gradle, bản sửa đổi 1.5.0 (Tháng 11/2015)
- Phần phụ thuộc:
- Lưu ý chung:
-
- Tích hợp trình bổ trợ Liên kết dữ liệu vào trình bổ trợ Android cho Gradle. Để bật trình bổ trợ, hãy bổ sung mã sau vào mỗi tệp
build.gradle
cho từng dự án sử dụng Trình bổ trợ Android cho Gradle: - Thêm một Transform API (API Biến đổi) mới để cho phép các trình bổ trợ bên thứ ba sử dụng các tệp
.class
đã biên dịch trước khi chúng được chuyển đổi thành tệp.dex
. Transform API đơn giản hoá việc chèn các lớp tuỳ chỉnh, đồng thời cung cấp thêm lựa chọn linh hoạt về những thao tác bạn có thể sử dụng. Để chèn một phép biến đổi vào bản dựng, hãy tạo một lớp mới triển khai một trong các giao diệnTransform
và đăng ký lớp đó bằngandroid.registerTransform(theTransform)
hoặcandroid.registerTransform(theTransform, dependencies)
. Bạn không cần phải nối các tác vụ với nhau. Hãy lưu ý những thông tin sau về Transform API: - Phép biến đổi có thể áp dụng cho một hoặc nhiều mục sau đây: dự án hiện tại, các dự án con và các thư viện bên ngoài.
- Một phép biến đổi phải được đăng ký ở mọi nơi và sẽ áp dụng cho tất cả biến thể.
- Chế độ xử lý mã nội bộ, thông qua Thư viện mức độ sử dụng mã Java (JaCoCo), ProGuard và MultiDex, nay sử dụng Transform API. Tuy nhiên, Bộ công cụ biên dịch Android của Java
(Jack) không dùng API này mà chỉ đường dẫn mã
javac/dx
mới sử dụng. - Gradle sẽ thực thi những phép biến đổi theo thứ tự sau: JaCoCo, các trình bổ trợ bên thứ ba, ProGuard. Thứ tự thực thi trình bổ trợ bên thứ ba khớp với thứ tự bổ sung phép biến đổi do trình bổ trợ bên thứ ba thực hiện; các nhà phát triển trình bổ trợ bên thứ ba không thể điều khiển thứ tự thực thi của phép biến đổi thông qua API.
- Ngưng dùng phương thức getter của
dex
trong lớpApplicationVariant
. Bạn không thể truy cập vào tác vụDex
thông qua API biến thể nữa vì thao tác này hiện đã được thực hiện thông qua một phép biến đổi. Hiện tại, không có phương pháp thay thế khác để điều khiển quá trình tạo tệp dex. - Sửa tính năng hỗ trợ gia tăng cho tài sản.
- Cải thiện tính năng hỗ trợ MultiDex bằng cách phát hành cho các dự án kiểm thử. Hiện các kiểm thử sẽ tự động sở hữu phần phụ thuộc
com.android.support:multidex-instrumentation
. - Thêm khả năng ngưng hoạt động bản dựng Gradle một cách chính xác và báo cáo nguyên nhân cơ bản về lỗi xảy ra khi bản dựng Gradle gọi các tác vụ không đồng bộ dẫn đến quá trình của trình chạy không thể hoạt động.
- Hỗ trợ thêm tính năng thao tác định cấu hình Giao diện nhị phân của ứng dụng (ABI) cụ thể trong các biến thể chứa nhiều ABI.
- Thêm tính năng hỗ trợ danh sách được phân tách bằng dấu phẩy các số sê-ri thiết bị dành cho biến môi trường
ANDROID_SERIAL
khi cài đặt hoặc chạy kiểm thử. - Khắc phục lỗi cài đặt trên các thiết bị chạy Android 5.0 (API cấp 20) trở lên khi tên APK chứa dấu cách.
- Sửa các vấn đề khác nhau liên quan đến đầu ra lỗi Công cụ đóng gói tài nguyên Android (AAPT).
- Thêm tính năng hỗ trợ khả năng đo lường gia tăng JaCoCo để các bản dựng gia tăng hoạt động nhanh hơn. Hiện Plugin của Android dành cho Gradle sẽ gọi trực tiếp trình đo lường JaCoCo. Để buộc sử dụng phiên bản mới của trình đo lường JaCoCo, bạn cần bổ sung phiên bản này dưới dạng một phần phụ thuộc tập lệnh bản dựng.
- Sửa tính năng hỗ trợ JaCoCo để bỏ qua các tệp không phải lớp.
- Thêm tuỳ chọn hỗ trợ vectơ vẽ được nhằm tạo PNG ở thời gian xây dựng để đạt khả năng tương thích ngược.
Plugin của Android dành cho Gradle sẽ tạo ra các tệp PNG cho mọi vectơ vẽ được tìm thấy trong thư mục tài nguyên không chỉ định phiên bản API, hay chỉ định thuộc tính
android:minSdkVersion
của 20 trở xuống trong phần tử<uses-sdk>
trong tệp kê khai ứng dụng. Bạn có thể thiết lập mật độ PNG bằng cách sử dụng thuộc tínhgeneratedDensities
trong các mụcdefaultConfig
hoặcproductFlavor
của tệpbuild.gradle
. - Thêm tính năng chia sẻ
android.jar
mô phỏng mà trình bổ trợ chỉ tạo một lần và sử dụng nhằm kiểm thử đơn vị. Nhiều mô-đun, chẳng hạn nhưapp
vàlib
, hiện chia sẻ tính năng đó. Hãy xoá$rootDir/build
để tạo lại tính năng này. - Thay đổi quá trình xử lý các tài nguyên Java để quá trình này diễn ra trước các tác vụ làm rối mã nguồn thay vì trong quá trình đóng gói APK. Thay đổi này sẽ giúp các tác vụ làm rối mã nguồn có cơ hội điều chỉnh tài nguyên Java sau khi làm rối mã nguồn các gói.
- Sửa vấn đề sử dụng mã Giao diện gốc Java (JNI) trong trình bổ trợ thư viện thử nghiệm.
- Thêm khả năng thiết lập riêng phiên bản nền tảng với thuộc tính
android:compileSdkVersion
trong trình bổ trợ thư viện thử nghiệm.
android { dataBinding { enabled = true } }
android { dataBinding { enabled = true } }
- Tích hợp trình bổ trợ Liên kết dữ liệu vào trình bổ trợ Android cho Gradle. Để bật trình bổ trợ, hãy bổ sung mã sau vào mỗi tệp
Phiên bản tối thiểu | Phiên bản mặc định | Lưu ý | |
---|---|---|---|
Gradle | 2.2.1 | 2.2.1 | Để tìm hiểu thêm, hãy xem phần cập nhật Gradle. |
Công cụ tạo SDK | 21.1.1 | 21.1.1 | Cài đặt hoặc định cấu hình Công cụ tạo SDK. |