Google ha presentato la prima versione beta della piattaforma mobile open source Android 12. Il rilascio di Android 12 è previsto per il terzo trimestre del 2021. Le versioni del firmware sono state preparate per i dispositivi Pixel 3 / 3 XL, Pixel 3a / 3a XL, Pixel 4 / 4 XL, Pixel 4a / 4a 5G e Pixel 5, nonché per alcuni dispositivi ASUS, OnePlus, Oppo, Realme, Sharp, TCL, Transsion, Vivo, Xiaomi e ZTE.
Tra le modifiche più significative per l'utente:
- È stata proposta una delle aggiornamenti più importanti nel design dell'interfaccia nella storia del progetto. Il nuovo design realizza il concetto di "Material You", presentato come una variazione del Material Design di nuova generazione. Il nuovo concetto sarà automaticamente applicato a tutte le piattaforme e agli elementi dell'interfaccia, senza richiedere modifiche da parte degli sviluppatori di applicazioni. A luglio, verrà fornita agli sviluppatori la prima versione stabile del nuovo toolkit per la creazione di interfacce grafiche: Jetpack Compose.

Nella piattaforma stessa spicca un nuovo design dei widget. I widget sono stati resi più evidenti, con angoli arrotondati accentuati, e offrono la possibilità di utilizzare colori dinamici in base al tema di sistema. Sono stati aggiunti elementi di controllo interattivi, come caselle di controllo e interruttori (CheckBox, Switch e RadioButton), che ad esempio consentono di modificare le liste di attività nel widget TODO senza aprire l'app.

È stata implementata una transizione visiva più fluida verso le applicazioni avviate dai widget. È stata semplificata la personalizzazione dei widget: è stato aggiunto un pulsante (cerchio con una matita) per un rapido riposizionamento del widget sullo schermo, che appare quando si tiene premuto a lungo il widget.


Sono state fornite modalità aggiuntive per limitare le dimensioni del widget e la possibilità di utilizzare un layout adattivo per gli elementi del widget (responsive layout) per creare layout standard che cambiano in base alle dimensioni dell'area visibile (ad esempio, è possibile creare layout separati per tablet e smartphone). Nell'interfaccia di selezione dei widget (widget picker) è stata implementata un'anteprima dinamica e la possibilità di visualizzare la descrizione del widget.

- È stata aggiunta la possibilità di adattare automaticamente la palette di sistema al colore dello sfondo scelto: il sistema rileva automaticamente i colori predominanti, modifica l'attuale palette e applica le modifiche a tutti gli elementi dell'interfaccia, inclusa l'area delle notifiche, lo schermo di blocco, i widget e il regolatore del volume.
- Sono stati implementati nuovi effetti animati, come l'ingrandimento progressivo e il movimento fluido delle aree durante lo scorrimento, l'apparizione e lo spostamento degli elementi sullo schermo. Ad esempio, quando si annulla una notifica sullo schermo di blocco, l'indicatore dell'ora si ingrandisce automaticamente e occupa lo spazio precedentemente occupato dalla notifica.
- È stata ristrutturata la grafica dell'area delle notifiche e delle impostazioni rapide. Tra le nuove impostazioni rapide sono state aggiunte opzioni per Google Pay e per il controllo della casa intelligente. Tenendo premuto il pulsante di accensione, si attiva Google Assistant, a cui è possibile dare il comando per effettuare una chiamata, aprire un'applicazione o leggere ad alta voce un articolo.

- È stato aggiunto un effetto di allungamento dei bordi di scorrimento (Stretch overscroll) che indica che l'utente è uscito dall'area di scorrimento e ha raggiunto la fine del contenuto. L'immagine del contenuto si allunga e rimbalza indietro con il nuovo effetto. La nuova modalità di indicazione della fine dello scorrimento è attivata per impostazione predefinita, ma nelle impostazioni è disponibile l'opzione per tornare al comportamento precedente.
- L'interfaccia è stata ottimizzata per i dispositivi con schermi pieghevoli.

- Sono state realizzate transizioni audio più fluide: quando si passa da un'applicazione che emette suoni a un'altra, il suono della prima ora ora si abbassa delicatamente e quello della seconda aumenta gradualmente, senza sovrapporre i suoni.
- È stata effettuata un'ottimizzazione significativa delle prestazioni del sistema: il carico sulla CPU dei principali servizi di sistema è stato ridotto del 22%, il che ha portato a un aumento dell'autonomia della batteria del 15%. Grazie alla riduzione della concorrenza nelle operazioni di blocco, alla riduzione dei ritardi e all'ottimizzazione dell'input/output, è stata migliorata la fluidità nel passaggio da un'applicazione all'altra e ridotto il tempo di avvio delle applicazioni.
Nel PackageManager, durante il lavoro con gli snapshot in modalità sola lettura, il conflitto di blocchi è stato ridotto del 92%. Nel meccanismo di interprocess communication, Binder ha implementato un caching leggero, che ha permesso di ridurre i ritardi di 47 volte per alcune tipologie di chiamate. È stata migliorata la performance nel trattamento di file dex, odex e vdex, portando a una riduzione del tempo di caricamento delle applicazioni, soprattutto su dispositivi con una quantità limitata di memoria. È stato accelerato il lancio delle applicazioni dalle notifiche; ad esempio, l'apertura di Google Photos da una notifica ora avviene il 34% più velocemente.
È stata aumentata la performance delle query al database grazie all'applicazione di ottimizzazioni inline nell'operazione CursorWindow. Per piccoli volumi di dati, CursorWindow è diventato più veloce del 36%, mentre per set contenenti più di 1000 righe, l'accelerazione può raggiungere fino a 49 volte.
Sono stati proposti criteri per la classificazione dei dispositivi in base alla loro performance. A seconda delle capacità del dispositivo, gli viene assegnata una classe di performance, che può poi essere utilizzata dalle applicazioni per limitare le funzionalità dei codec su dispositivi a bassa potenza o per gestire contenuti multimediali di qualità superiore su hardware più potente.
- È stata implementata una modalità di ibernazione delle applicazioni che consente, se l'utente non interagisce esplicitamente con il programma da molto tempo, di ripristinare automaticamente le autorizzazioni precedentemente concesse all'applicazione, fermare l'esecuzione, restituire le risorse utilizzate dall'applicazione, come la memoria, e bloccare l'avvio di lavori in background e l'invio di notifiche push. Questa modalità può essere applicata alla maggior parte delle applicazioni e serve a proteggere i dati dell'utente, a cui possono continuare ad avere accesso programmi dimenticati da tempo. Se lo si desidera, la modalità di ibernazione può essere disattivata selettivamente nelle impostazioni.
- È stata aggiunta un'autorizzazione separata BLUETOOTH_SCAN per la scansione dei dispositivi circostanti tramite Bluetooth. In precedenza, questa funzionalità era disponibile solo se si aveva accesso alle informazioni sulla posizione del dispositivo, il che portava alla necessità di fornire ulteriori autorizzazioni alle applicazioni che richiedevano il pairing con un altro dispositivo tramite Bluetooth.
- È stato modernizzato il dialogo per la concessione di accesso alle informazioni sulla posizione del dispositivo. Ora all'utente è data la possibilità di fornire all'app informazioni sulla posizione esatta oppure di fornire solo dati approssimativi, oltre a limitare l'azione dei permessi solo alla sessione attiva con l'app (vietando l'accesso quando è in background). Il livello di precisione dei dati forniti alla scelta di una posizione approssimativa può essere modificato nelle impostazioni, anche in relazione a singole applicazioni.

Nella seconda beta è attesa l'introduzione dell'interfaccia Privacy Dashboard con una panoramica completa di tutte le impostazioni dei permessi, consentendo di capire quali dati delle app hanno accesso all'utente. Nella dashboard verranno aggiunti indicatori di attività del microfono e della fotocamera, tramite i quali sarà anche possibile disattivare forzatamente il microfono e la fotocamera.
- Invece di lavorare su una versione per dispositivi indossabili Android Wear, insieme a Samsung si è deciso di sviluppare una nuova piattaforma unificata che combini le funzionalità di Android e Tizen.
- Sono state ampliate le funzionalità delle versioni di Android per i sistemi di infotainment automobilistici e per le smart TV.
- Puoi familiarizzare con l'elenco delle novità a basso livello nella panoramica delle prime versioni per gli sviluppatori di Android 12 (developer preview).
Fonte: opennet.ru








