R8 (người kế nhiệm hiện đại của ProGuard) shrink code không dùng (tree shaking), obfuscate tên class/method để bảo mật, và optimize code cho runtime performance.
- Chạy trong release build, giảm đáng kể kích thước app và thời gian khởi động.
- R8 đã bật mặc định từ AGP 3.4 — không cần thêm
android.enableR8 = truetrong gradle.properties với AGP hiện tại (8.x). - Hiểu cách cấu hình rules R8 rất quan trọng cho production release.