Thiết lập thư viện hỗ trợ

Lưu ý: Với bản phát hành Android 9.0 (API cấp 28), có một phiên bản mới của thư viện hỗ trợ có tên là AndroidX, thuộc Jetpack. Thư viện AndroidX chứa thư viện hỗ trợ hiện có và cũng bao gồm các thành phần Jetpack mới nhất.

Bạn có thể tiếp tục sử dụng thư viện hỗ trợ. Các cấu phần phần mềm trước đây (những cấu phần phần mềm có phiên bản 27 trở xuống và được đóng gói dưới dạng android.support.*) vẫn sẽ có trên Google Maven. Tuy nhiên, tất cả hoạt động phát triển thư viện mới sẽ diễn ra trong thư viện AndroidX.

Bạn nên sử dụng thư viện AndroidX trong tất cả dự án mới. Bạn cũng nên cân nhắc việc di chuyển các dự án hiện có sang AndroidX.

Cách bạn thiết lập Thư viện hỗ trợ Android trong dự án phát triển phụ thuộc vào những tính năng bạn muốn sử dụng và phạm vi phiên bản nền tảng Android mà bạn muốn hỗ trợ bằng ứng dụng của mình.

Tài liệu này hướng dẫn bạn tải gói Thư viện hỗ trợ xuống và thêm thư viện vào môi trường phát triển.

Các thư viện hỗ trợ hiện có sẵn thông qua kho lưu trữ Maven của Google. Chúng tôi không còn hỗ trợ việc tải thư viện xuống thông qua Trình quản lý SDK và chức năng đó sẽ sớm bị xoá.

Chọn thư viện hỗ trợ

Trước khi thêm Thư viện hỗ trợ vào ứng dụng, hãy quyết định những tính năng bạn muốn đưa vào và phiên bản Android thấp nhất mà bạn muốn hỗ trợ. Để biết thêm thông tin về các tính năng mà các thư viện khác nhau cung cấp, hãy xem phần Tính năng của thư viện hỗ trợ.

Thêm thư viện hỗ trợ

Để sử dụng Thư viện hỗ trợ, bạn phải sửa đổi các phần phụ thuộc trên đường dẫn lớp của dự án ứng dụng trong môi trường phát triển. Bạn phải thực hiện quy trình này cho từng Thư viện hỗ trợ mà bạn muốn sử dụng.

Cách thêm Thư viện hỗ trợ vào dự án ứng dụng:

  1. Thêm kho lưu trữ Maven của Google vào tệp settings.gradle của dự án.
    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            google()
    
            // If you're using a version of Gradle lower than 4.1, you must
            // instead use:
            //
            // maven {
            //     url 'https://maven.google.com'
            // }
        }
    }
  2. Đối với mỗi mô-đun mà bạn muốn sử dụng Thư viện hỗ trợ, hãy thêm thư viện đó vào khối dependencies của tệp build.gradle của mô-đun. Ví dụ: để thêm thư viện core-utils v4, hãy thêm nội dung sau:
    dependencies {
        ...
        implementation "com.android.support:support-core-utils:28.0.0"
    }

Thận trọng: Việc sử dụng các phần phụ thuộc động (ví dụ: palette-v7:23.0.+) có thể gây ra tình trạng cập nhật phiên bản không mong muốn và không tương thích hồi quy. Bạn nên chỉ định rõ phiên bản thư viện (ví dụ: palette-v7:28.0.0).

Sử dụng API Thư viện hỗ trợ

Các lớp Thư viện hỗ trợ cung cấp dịch vụ hỗ trợ cho các API khung hiện có thường có tên giống với lớp khung nhưng nằm trong các gói lớp android.support hoặc có hậu tố *Compat.

Thận trọng: Khi sử dụng các lớp trong Thư viện hỗ trợ, hãy nhớ nhập lớp từ gói thích hợp. Ví dụ: khi áp dụng lớp ActionBar:

  • android.support.v7.app.ActionBar khi sử dụng Thư viện hỗ trợ.
  • android.app.ActionBar khi chỉ phát triển cho API cấp 11 trở lên.

Lưu ý: Sau khi đưa Thư viện hỗ trợ vào dự án ứng dụng, bạn nên rút gọn, làm rối mã nguồn và tối ưu hoá ứng dụng để phát hành. Ngoài việc bảo vệ mã nguồn bằng tính năng làm rối mã nguồn, tính năng rút gọn còn xoá các lớp không sử dụng khỏi mọi thư viện mà bạn đưa vào ứng dụng, giúp giảm kích thước tải xuống của ứng dụng xuống mức nhỏ nhất có thể.

Bạn có thể tham khảo thêm hướng dẫn về cách sử dụng một số tính năng của Thư viện hỗ trợ trong các lớp đào tạo, hướng dẫn và mẫu dành cho nhà phát triển Android. Để biết thêm thông tin về các lớp và phương thức riêng lẻ trong Thư viện hỗ trợ, hãy xem các gói android.support trong tài liệu tham khảo API.

Thay đổi về nội dung khai báo trong tệp kê khai

Nếu bạn đang tăng khả năng tương thích ngược của ứng dụng hiện có với một phiên bản API Android cũ hơn bằng Thư viện hỗ trợ, hãy nhớ cập nhật tệp kê khai của ứng dụng. Cụ thể, bạn nên cập nhật phần tử android:minSdkVersion của thẻ <uses-sdk> trong tệp kê khai thành số phiên bản mới, thấp hơn, như minh hoạ dưới đây:

  <uses-sdk
      android:minSdkVersion="14"
      android:targetSdkVersion="23" />

Chế độ cài đặt tệp kê khai cho Google Play biết rằng ứng dụng của bạn có thể được cài đặt trên các thiết bị chạy Android 4.0 (API cấp 14) trở lên.

Nếu bạn đang sử dụng các tệp bản dựng Gradle, chế độ cài đặt minSdkVersion trong tệp bản dựng sẽ ghi đè chế độ cài đặt tệp kê khai.

plugins {
  id 'com.android.application'
}

android {
    ...

    defaultConfig {
        minSdkVersion 16
        ...
    }
    ...
}

Trong trường hợp này, chế độ cài đặt tệp bản dựng sẽ cho Google Play biết rằng bạn có thể cài đặt biến thể bản dựng mặc định của ứng dụng trên các thiết bị chạy Android 4.1 (API cấp 16) trở lên. Để biết thêm thông tin về các biến thể bản dựng, hãy xem phần Tổng quan về hệ thống xây dựng.

Lưu ý: Nếu bạn đang thêm một số thư viện hỗ trợ, thì phiên bản SDK tối thiểu phải là phiên bản cao nhất mà bất kỳ thư viện nào được chỉ định đều yêu cầu. Ví dụ: nếu ứng dụng của bạn bao gồm cả thư viện Hỗ trợ lựa chọn ưu tiên phiên bản 14thư viện Leanback phiên bản 17, thì phiên bản SDK tối thiểu phải là 17 trở lên.