Android 12 rende più semplice per gli sviluppatori sapere quali dispositivi sono più potenti di altri con qualcosa chiamato "classe di prestazioni".
I dispositivi Android sono disponibili in tutte le forme e forme. Abbiamo smartphone più economici con specifiche più deboli e smartphone più costosi con interni migliori. Tu, come utente, puoi ovviamente capire se il tuo smartphone può essere considerato "potente" o meno semplicemente cercando quelle specifiche online. Ma come fa un'app in esecuzione sul tuo dispositivo a saperlo? In teoria potrebbe fare cose come abbinare il nome del tuo dispositivo a un database, quindi estrarre le specifiche da quello, controllare le proprietà del sistema per il numero di parte/RAM del SoC capacità/ecc. o chiamare API Android che elencano informazioni come risoluzione, ecc., ma non esiste un modo semplice e unificato per stabilire quale tipo di prestazioni può offrire un dispositivo Android consegnare. Sarebbe utile se esistesse un modo rapido per raggruppare i dispositivi in categorie in modo che un'app possa fornire esperienze diverse ottimizzate per ciascuna classe di dispositivo. A tal fine, Google ha introdotto at
I/O 2021 quella che chiamano "classe di prestazione", a cominciare da Androide 12.Secondo Google, questo standard "definisce una serie di funzionalità che vanno oltre i requisiti di base di Android. I dispositivi che soddisfano i requisiti della classe di prestazioni possono supportare casi d'uso più impegnativi e fornire contenuti di qualità superiore." Gli sviluppatori di app possono verificare a quale classe di prestazioni appartiene un dispositivo in fase di runtime e quindi personalizzare l'app per offrire un'esperienza che sfrutti appieno le potenzialità del dispositivo prestazione. Inizialmente, Google afferma che sta "concentrando le capacità della classe di prestazioni sui casi d'uso dei media, con requisiti che includono la fotocamera latenza di avvio, disponibilità del codec e qualità di codifica, nonché dimensione minima della memoria, risoluzione dello schermo e lettura/scrittura prestazione."
Nella pagina Sviluppatori Android, Google afferma che ogni versione di Android ha la propria classe di prestazioni corrispondente, il che significa che esiste una classe di prestazioni per Android 12 e ce ne sarà una per Android 13, 14 e così via. La classe di prestazioni sarà definita nel Compatibility Definition Document (CDD) per quella particolare versione del sistema operativo Android (nota: il CDD di Android 12 non è ancora pubblico) e se o nessun dispositivo soddisfa effettivamente quella classe di prestazioni applicata dalla Compatibility Test Suite (CTS), una serie automatizzata di test che verifica la compatibilità con un sistema operativo Android versione.
Le classi di prestazioni sono compatibili con le versioni successive, il che significa che un dispositivo può essere aggiornato a una nuova versione di Android senza modifiche la sua classe di prestazioni, ma significa anche che i dispositivi possono cambiare classe se soddisfano i requisiti di quel nuovo sistema operativo versione. Mentre il concetto di classe di prestazioni viene introdotto con Android 12, Google afferma che definirà una classe di prestazioni anche per Android 11. Ciò significa che i dispositivi altamente capaci che eseguono l'aggiornamento da Android 11 ad Android 12 soddisfano le prestazioni i requisiti di classe per Android 11 ma non per Android 12 possono comunque informare le app che hanno prestazioni elevate dispositivi.
Sebbene Google non abbia condiviso i dettagli esatti su quali requisiti comporta la classe di prestazioni per Android 12, abbiamo scavato un po' e abbiamo trovato alcuni requisiti. Loro includono:
- Almeno 6 GB di RAM
- Almeno 400 dpi e risoluzione 1080p
- Almeno 150 MB/s di scrittura sequenziale, 250 MB/s di lettura sequenziale, 10 MB/s di scrittura casuale e 40 MB/s di lettura casuale
Oltre ad altri requisiti per un numero massimo di sessioni simultanee di decodificatore e codificatore video, bassa latenza di inizializzazione del codec, bassa quantità di cadute di fotogrammi di riproduzione e altro ancora.
Questa funzionalità può essere utile agli sviluppatori di app per migliorare l'esperienza complessiva non solo sui dispositivi che soddisfano le specifiche della "classe di prestazioni", ma anche sui telefoni di fascia bassa. Se un'app rileva che un telefono non soddisfa i requisiti per un dispositivo di "classe di prestazioni", può spegnersi alcune funzionalità o effetti visivi più impegnativi per migliorare il modo in cui l'app funziona nella fascia bassa telefoni. Allo stesso modo, possono aggiungere funzionalità su dispositivi di classe prestazionale che normalmente i telefoni di fascia bassa non supporterebbero senza compromettere l'esperienza di questi utenti.