Jetpack Compose mang lại hiệu suất vượt trội ngay từ đầu. Định cấu hình ứng dụng bằng các phương pháp hay nhất để tránh những lỗi thường gặp và tối ưu hoá hiệu suất của ứng dụng Compose.
Kỹ năng Android
Xem trên GitHubHiệu suất của Jetpack Compose
android skills add jetpack-compose-performanceĐo điểm chuẩn Jetpack Compose
Để xác thực hiệu suất của Jetpack Compose so với Khung hiển thị, chúng tôi sử dụng các điểm chuẩn chính – điểm chuẩn tập trung vào hành trình quan trọng của người dùng trong thực tế, chẳng hạn như khởi động nguội một ứng dụng hoặc cuộn danh sách hay lưới có hình ảnh. Chúng tôi tiến hành các điểm chuẩn này bằng cách sử dụng ứng dụng Pokedex nguồn mở, so sánh các phương thức triển khai Khung hiển thị và Compose.
Những điểm chuẩn này cho thấy Compose 1.9 trở lên có hiệu suất tương đương với Khung hiển thị về tình trạng giật khi cuộn.
Để biết thêm các chỉ số khác và tìm hiểu về phương pháp của chúng tôi, hãy xem Điểm chuẩn Hero.
Khái niệm chính
Sau đây là một số khái niệm chính về hiệu suất trong Compose:
- Các giai đoạn: Việc hiểu rõ các giai đoạn kết hợp, bố cục và vẽ là rất quan trọng để tối ưu hoá cách Compose cập nhật giao diện người dùng.
- Hồ sơ cơ sở: Những hồ sơ này biên dịch trước mã thiết yếu, giúp khởi chạy ứng dụng nhanh hơn và tương tác mượt mà hơn.
- Tính ổn định: Tìm hiểu cách Compose so sánh các tham số trong quá trình kết hợp lại để bạn có thể bỏ qua những công việc không cần thiết mà không cần thực hiện các bước kiểm tra tính bằng nhau tốn kém.
Định cấu hình đúng cách cho ứng dụng của bạn
Nếu ứng dụng của bạn hoạt động kém hiệu quả, thì có thể đã xảy ra vấn đề với cấu hình. Việc đầu tiên nên làm là kiểm tra các tuỳ chọn cấu hình sau:
- Tạo ở chế độ phát hành bằng R8: Thử chạy ứng dụng ở chế độ phát hành. Chế độ gỡ lỗi rất hữu ích để phát hiện nhiều vấn đề, nhưng nó cũng khiến hiệu suất giảm và còn gây khó khăn cho việc phát hiện các vấn đề khác. Bạn cũng nên bật tính năng tối ưu hoá và rút gọn bằng trình biên dịch R8 để đảm bảo bản phát hành có hiệu suất cao và hiệu quả.
- Sử dụng Hồ sơ cơ sở: Hồ sơ cơ sở cải thiện hiệu suất bằng cách biên dịch trước mã cho các hành trình trọng yếu của người dùng. Compose có một hồ sơ mặc định, nhưng lý tưởng nhất là bạn cũng nên tạo một hồ sơ dành riêng cho ứng dụng. Tìm hiểu thêm về Hồ sơ cơ sở trong tài liệu chung về hiệu suất Android
Công cụ
Làm quen với bộ công cụ có sẵn để giúp bạn đo lường và phân tích hiệu suất của ứng dụng Compose.
Các phương pháp hay nhất
Khi phát triển ứng dụng bằng Compose, hãy lưu ý các phương pháp hay nhất sau đây:
- Tránh các phép tính tốn kém: Sử dụng
rememberđể lưu kết quả của các phép tính tốn kém vào bộ nhớ đệm. - Hỗ trợ bố cục tải từng phần: Cung cấp các tham số
keyvàcontentTypeổn định cho bố cục tải từng phần để giảm thiểu việc kết hợp lại không cần thiết và cho phép sử dụng lại vùng chứa. - Giới hạn các thành phần kết hợp lại không cần thiết: Sử dụng
computedStateOf(trong Compose 1.13 trở lên) hoặcderivedStateOfđể giới hạn các thành phần kết hợp lại khi đọc trạng thái thay đổi nhanh chóng. - Trì hoãn việc đọc trạng thái: Trì hoãn việc đọc trạng thái càng lâu càng tốt bằng cách gói chúng trong các hàm lambda.
- Sử dụng công cụ sửa đổi lambda để thay đổi trạng thái: Sử dụng công cụ sửa đổi dựa trên lambda như
Modifier.offset { ... }cho các biến trạng thái thường xuyên thay đổi. - Tránh các lượt viết ngược: Đừng bao giờ viết vào state đã được đọc trong một composable.
Để biết thêm thông tin, hãy xem hướng dẫn về các phương pháp hay nhất.
Số lượt xem
Nếu bạn đang làm việc với khung hiển thị thay vì Compose, hãy xem hướng dẫn riêng về cách Cải thiện hiệu suất bố cục.
Tài nguyên khác
- Hướng dẫn về hiệu suất của ứng dụng: Khám phá các phương pháp hay nhất, thư viện và công cụ để cải thiện hiệu suất trên Android.
- Kiểm tra hiệu suất: Kiểm tra hiệu suất của ứng dụng.
- Đo điểm chuẩn: Đo điểm chuẩn hiệu suất của ứng dụng.
- Khởi động ứng dụng: Tối ưu hoá quá trình khởi động ứng dụng.
- Hồ sơ cơ sở: Tìm hiểu về hồ sơ cơ sở.