Bật tính năng tối ưu hoá ứng dụng

Để mang lại trải nghiệm tốt nhất cho người dùng, bạn nên tối ưu hoá ứng dụng để ứng dụng nhỏ và nhanh nhất có thể. Trình tối ưu hoá ứng dụng của chúng tôi (có tên là R8) giúp đơn giản hoá ứng dụng của bạn bằng cách xoá mã và tài nguyên không dùng đến, viết lại mã để tối ưu hoá hiệu suất thời gian chạy, v.v. Đối với người dùng, điều này có nghĩa là:

  • Thời gian khởi động nhanh hơn
  • Ít giật hơn
  • Ít lỗi ANR hơn

Để bật tính năng tối ưu hoá ứng dụng, hãy đặt isMinifyEnabled = true (để tối ưu hoá mã) và isShrinkResources = true (để tối ưu hoá tài nguyên) trong tập lệnh bản dựng cấp ứng dụng của bản phát hành như trong mã sau. Bạn nên luôn bật cả hai chế độ cài đặt này. Bạn cũng chỉ nên bật tính năng tối ưu hoá ứng dụng trong phiên bản cuối cùng của ứng dụng mà bạn kiểm thử trước khi phát hành (thường là bản phát hành) vì tính năng tối ưu hoá làm tăng thời gian tạo bản dựng của dự án và có thể khiến việc gỡ lỗi trở nên khó khăn hơn do cách tính năng này sửa đổi mã.

Kotlin

android {
    buildTypes {
        release {

            // Enables code-related app optimization.
            isMinifyEnabled = true

            // Enables resource shrinking.
            isShrinkResources = true

            proguardFiles(
                // Default file with automatically generated optimization rules.
                getDefaultProguardFile("proguard-android-optimize.txt"),

                ...
            )
            ...
        }
    }
    ...
}

Groovy

android {
    buildTypes {
        release {

            // Enables code-related app optimization.
            minifyEnabled true

            // Enables resource shrinking.
            shrinkResources true

            // Default file with automatically generated optimization rules.
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt')

            ...
        }
    }
}

Xin lưu ý rằng việc bật tính năng tối ưu hoá ứng dụng sẽ khiến dấu vết ngăn xếp khó hiểu, đặc biệt là nếu R8 đổi tên lớp hoặc tên phương thức. Để có được dấu vết ngăn xếp tương ứng chính xác với mã nguồn của bạn, hãy xem phần Khôi phục dấu vết ngăn xếp ban đầu.

Nếu bật R8, bạn cũng nên tạo Hồ sơ khởi động để có hiệu suất khởi động tốt hơn nữa.

Nếu bạn bật tính năng tối ưu hoá ứng dụng và tính năng này gây ra lỗi, hãy tham khảo một số chiến lược sau để khắc phục: