Class performa adalah standar pertama yang diperkenalkan di Android 12. Class performa menentukan kumpulan kemampuan perangkat yang tidak sekadar memenuhi persyaratan dasar Android.
Setiap versi Android memiliki class performanya masing-masing yang ditentukan dalam Compatibility Definition Document (CDD) Android versi tersebut. Compatibility Test Suite (CTS) Android memverifikasi persyaratan CDD.
Setiap perangkat Android mendeklarasikan class performa yang didukungnya. Developer dapat menemukan class performa perangkat saat runtime dan memberikan upgrade pengalaman guna memanfaatkan kemampuan perangkat secara penuh.
Untuk menemukan level class performa perangkat, gunakan library Jetpack Core Performance. Library ini melaporkan class performa media perangkat seperti yang dideklarasikan dalam informasi versi build atau berdasarkan data dari layanan Google Play.
Mulailah dengan menambahkan dependensi untuk modul yang relevan dalam file gradle Anda:
// Kotlin implementation of Jetpack Core library
implementation("androidx.core:core-ktx:1.10.1")
// Enable APIs to query for device-reported Performance Class
implementation("androidx.core:core-performance:1.0.0-alpha03")
// Enable APIs to query Google Play Services for Performance Class
implementation("androidx.core:core-performance-play-services:1.0.0-alpha03")
Kemudian, buat instance implementasi DevicePerformance
, seperti PlayServicesDevicePerformance
,
dalam peristiwa siklus proses onCreate()
dari Activity
atau Fragment
:
Kotlin
var devicePerformance = PlayServicesDevicePerformance(context)
Java
DevicePerformance devicePerformance = new PlayServicesDevicePerformance(context);
Selanjutnya, Anda dapat mengambil properti mediaPerformanceClass
untuk menyesuaikan pengalaman aplikasi berdasarkan kemampuan perangkat:
Kotlin
when { devicePerformance.mediaPerformanceClass >= Build.VERSION_CODES.T -> { // Performance class level 13 and above // Provide the most premium experience for highest performing devices } devicePerformance.mediaPerformanceClass == Build.VERSION_CODES.S -> { // Performance class level 12 // Provide a high quality experience } else -> { // Performance class level 11 or undefined // Remove extras to keep experience functional } }
Java
if (devicePerformance.getMediaPerformanceClass() >= Build.VERSION_CODES.T) { // Performance class level 13 and above // Provide the most premium experience for highest performing devices } else if (devicePerformance.getMediaPerformanceClass() == Build.VERSION_CODES.S) { // Performance class level 12 // Provide a high quality experience } else { // Performance class level 11 or undefined // Remove extras to keep experience functional }
Class performa memiliki performa yang kompatibel dengan versi yang lebih baru. Perangkat dapat melakukan upgrade ke versi platform yang lebih baru tanpa mengupdate class performanya. Misalnya, perangkat yang awalnya mendukung class performa 12 dapat meng-upgrade versi ke Android 13 dan terus melaporkannya untuk mendukung class12 jika tidak memenuhi persyaratan class 13. Ini berarti class performa menyediakan cara untuk mengelompokkan perangkat tanpa bergantung pada versi Android tertentu.
Class performa 13
Class performa 13 dibuat berdasarkan persyaratan yang diperkenalkan di class performa 12. Persyaratan class performa tertentu dipublikasikan di CDD Android. Selain meningkatkan persyaratan untuk item dari class performa 12, CDD ini akan menentukan persyaratan baru dalam area berikut:
Media
- Decoder hardware AV1
- Decoder hardware aman
- Latensi inisialisasi decoder
- Latensi audio bolak-balik
- Headset berkabel dan perangkat audio USB
- Perangkat MIDI
- Trusted execution environment yang didukung hardware
Kamera
- Stabilisasi pratinjau
- Perekaman gerakan lambat
- Rasio zoom minimum untuk kamera ultrawide
- Kamera serentak
- Multi-kamera logis
- Kasus penggunaan streaming
Class performa 12
Class performa 12 berfokus pada kasus penggunaan media. Persyaratan class performa tertentu dipublikasikan di CDD Android. CDD menentukan persyaratan di area berikut:
Media
- Sesi codec video serentak
- Latensi inisialisasi encoder
- Penurunan frame decoder
- Kualitas encoding
Kamera
- Resolusi dan kecepatan frame
- Latensi startup dan pengambilan gambar
FULL
atau level hardware yang lebih baik- Sumber stempel waktu bersifat realtime
- Kemampuan RAW
Generik
- Memori
- Performa operasi baca dan tulis
- Resolusi layar
- Kepadatan layar
Class performa 11
Class performa 11 menyertakan subset persyaratan untuk class performa 12, yang memungkinkan developer memberikan pengalaman yang disesuaikan di perangkat yang lebih lama, tetapi masih berkemampuan tinggi. Persyaratan class performa tertentu dipublikasikan di Android CDD.
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- Waktu startup aplikasi