Uscita della piattaforma mobile Android 12

Google ha pubblicato la versione della piattaforma mobile open source Android 12. I codici sorgente relativi al nuovo rilascio sono disponibili nel repository Git del progetto (branch android-12.0.0_r1). Gli aggiornamenti del firmware sono pronti per i dispositivi della serie Pixel, oltre a smartphone prodotti da Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo e Xiaomi. Sono state anche create immagini di sistema generiche (GSI) universali, adatte per vari dispositivi basati sulle architetture ARM64 e x86_64.

Novità principali:

  • È stato introdotto uno degli aggiornamenti più significativi dell'interfaccia grafica nella storia del progetto. Il nuovo design realizza il concetto di "Material You", presentato come un'evoluzione del Material Design di nuova generazione. Questo nuovo concetto sarà applicato automaticamente a tutte le piattaforme e agli elementi dell'interfaccia, senza richiedere modifiche da parte degli sviluppatori di applicazioni. A luglio, si prevede di fornire agli sviluppatori la prima release stabile del nuovo toolkit per la sviluppo di interfacce grafiche — Jetpack Compose.
    Uscita della piattaforma mobile Android 12

    La piattaforma presenta un nuovo design per i widget. I widget sono diventati più evidenti, gli angoli sono più arrotondati e sono stati introdotti colori dinamici, in linea con il tema del 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 delle attività nel widget TODO senza aprire l'applicazione.

    Uscita della piattaforma mobile Android 12

    È stato implementato un passaggio visivo più fluido verso le applicazioni avviate dai widget. La personalizzazione dei widget è stata semplificata: è stato aggiunto un pulsante (cerchio con una matita) per riposizionare rapidamente il widget sullo schermo, che appare con una pressione prolungata sul widget.

    Uscita della piattaforma mobile Android 12 Uscita della piattaforma mobile Android 12

    Sono state fornite ulteriori modalità di limitazione delle dimensioni dei widget e la possibilità di utilizzare un layout reattivo per creare disposizioni standard che variano a seconda delle dimensioni dell'area visibile (ad esempio, è possibile creare layout separati per tablet e smartphone). Nell'interfaccia di selezione dei widget è implementante un'anteprima dinamica e la possibilità di visualizzare la descrizione del widget.

    Uscita della piattaforma mobile Android 12
  • È stata aggiunta la possibilità di adattare automaticamente la palette di sistema al colore dello sfondo selezionato: il sistema determina automaticamente i colori predominanti, corregge la palette attuale e applica le modifiche a tutti gli elementi dell'interfaccia, inclusa l'area delle notifiche, la schermata di blocco, i widget e il regolatore del volume.
  • Sono stati implementati nuovi effetti animati, come ingrandimenti gradualisi e spostamenti morbidi delle aree durante lo scorrimento, l'apparizione e il movimento degli elementi sullo schermo. Ad esempio, annullando una notifica sulla schermata di blocco, l'indicatore del tempo si ingrandisce automaticamente e occupa lo spazio che prima era occupato dalla notifica.
  • L'aspetto della barra a discesa con notifiche e impostazioni rapide è stato aggiornato. Tra le impostazioni rapide sono state aggiunte opzioni per Google Pay e il controllo della casa intelligente. Tenendo premuto il pulsante di accensione, si può chiamare Google Assistant, a cui si può dare il comando di effettuare una chiamata, aprire un'app o leggere un articolo ad alta voce. Le notifiche sono state uniformate secondo il contenuto fornito dall'app.
    Uscita della piattaforma mobile Android 12
  • Aggiunto l'effetto di allungamento dei bordi di scorrimento (Stretch overscroll), che segnala all'utente di essere uscito dai limiti dell'area di scorrimento e di aver raggiunto la fine del contenuto. L'immagine del contenuto con questo nuovo effetto sembra Allungarsi e rimbalzare indietro. La nuova modalità di indicazione della fine dello scorrimento è attivata per impostazione predefinita, ma nelle impostazioni è presente un'opzione per ripristinare il comportamento precedente.
  • Ottimizzato l'interfaccia per i dispositivi con schermi pieghevoli.
    Uscita della piattaforma mobile Android 12
  • Implementate transizioni sonore più fluide: durante il passaggio da un'applicazione audio a un'altra, l'audio della prima si attenua gradualmente, mentre quello della seconda aumenta dolcemente, senza sovrapporre i suoni.
  • È stata modernizzata l'interfaccia per la gestione delle connessioni di rete nel pannello delle impostazioni rapide, nella barra degli strumenti e nel configuratore di sistema. È stata aggiunta una nuova barra Internet che consente di passare rapidamente tra diversi provider e di diagnosticare problemi.
    Uscita della piattaforma mobile Android 12
  • È stata introdotta la possibilità di creare screenshot che catturano non solo l'area visibile, ma anche il contenuto nella zona di scorrimento. La possibilità di salvare contenuti al di fuori dell'area visibile funziona per tutte le applicazioni che utilizzano la classe View per la visualizzazione. Per supportare screenshot scorrevoli in programmi con interfacce specifiche, è stata proposta un'API ScrollCapture.
    Uscita della piattaforma mobile Android 12
  • È stata migliorata la funzione di rotazione automatica del contenuto dello schermo, che ora può utilizzare il riconoscimento facciale tramite la fotocamera frontale per determinare la necessità di ruotare lo schermo, ad esempio quando una persona usa il telefono sdraiata. Per garantire la privacy, le informazioni vengono elaborate in tempo reale senza salvataggio intermedio delle immagini. Questa funzione è attualmente disponibile solo sugli smartphone Pixel 4 e modelli più recenti.
  • È stata migliorata la modalità "picture-in-picture" (PIP) e aumentata la fluidità delle transizioni. Quando è attivato il passaggio automatico a PIP con il gesto up-to-home (trascinamento del bordo dello schermo verso l'alto), l'applicazione passa immediatamente alla modalità PIP, senza attendere il completamento dell'animazione. È stata migliorata la ridimensionamento delle finestre PIP con contenuti diversi dai video. È stata aggiunta la possibilità di nascondere la finestra PIP trascinandola verso il bordo sinistro o destro dello schermo. Il comportamento al tocco della finestra PIP è stato modificato: un tocco ora mostra i pulsanti di controllo, mentre un doppio tocco cambia la dimensione della finestra.
  • Ottimizzazioni delle prestazioni:
    • È stata effettuata una significativa ottimizzazione delle prestazioni del sistema: il carico sulla CPU dei principali servizi di sistema è diminuato del 22%, il che ha portato a un aumento dell'autonomia del 15%. Grazie alla riduzione della concorrenza delle serrature, alla diminuzione dei ritardi e all'ottimizzazione dell'input/output, è aumentata la produttività durante il passaggio da un'applicazione all'altra e si è ridotto il tempo di avvio delle applicazioni.

      In PackageManager, when working with snapshots in read-only mode, lock contention has been reduced by 92%. A lightweight caching mechanism in the Binder inter-process communication has led to a 47-fold reduction in delays for certain types of calls. The performance of dex, odex, and vdex file processing has been enhanced, resulting in faster application loading times, particularly on devices with limited memory. The launch of applications from notifications has been accelerated, for instance, opening Google Photos from a notification is now 34% faster.

      The performance of database queries has been improved through the application of inline optimizations in the CursorWindow operation. For small data volumes, CursorWindow is 36% faster, and for sets including more than 1000 rows, the speedup can reach up to 49 times.

      Sono stati proposti criteri per la classificazione dei dispositivi in base alle prestazioni. A seconda delle capacità del dispositivo, viene assegnata una classe di prestazione, che può poi essere utilizzata nelle applicazioni per limitare le funzionalità dei codec su dispositivi meno potenti o per gestire contenuti multimediali di qualità superiore su hardware più potente.

    • È stata implementata la modalità di ibernazione delle applicazioni, che consente di revocare automaticamente i permessi precedentemente concessi all'applicazione se l'utente non interagisce esplicitamente con essa da un po' di tempo. Questa modalità ferma l'esecuzione, restituisce le risorse utilizzate dall'applicazione, come la memoria, e blocca l'esecuzione di attività in background e l'invio di notifiche push. Può essere applicata alla maggior parte delle applicazioni e protegge i dati dell'utente a cui programmi dimenticati continuano ad avere accesso. Se desiderato, la modalità di ibernazione può essere disabilitata selettivamente nelle impostazioni.
    • È stata ottimizzata l'animazione durante la rotazione dello schermo, riducendo il ritardo prima della rotazione di circa il 25%.
    • È stato incluso un nuovo motore di ricerca altamente performante, AppSearch, che consente di indicizzare le informazioni sul dispositivo e di eseguire ricerche full-text con risultati graduati. AppSearch fornisce due tipi di indici: uno per organizzare le ricerche in singole applicazioni e uno per cercare nell'intero sistema.
    • È stata aggiunta l'API Game Mode e le relative impostazioni, che consentono di gestire il profilo delle prestazioni di gioco: ad esempio, è possibile sacrificare le prestazioni per prolungare l'autonomia oppure utilizzare tutte le risorse disponibili per ottenere un FPS massimo.
    • È stata aggiunta la funzione play-as-you-download, che consente di scaricare le risorse di gioco in background durante l'installazione, permettendo di iniziare a giocare ancor prima che il download sia completato.
    • È stata migliorata la reattività e la velocità di risposta nella gestione delle notifiche. Ad esempio, toccando una notifica, ora si accede immediatamente all'applicazione ad essa associata. Negli applicativi è limitato l'uso dei gestori intermedi delle notifiche.
    • È stata ottimizzata la chiamata IPC in Binder. Grazie all'implementazione di una nuova strategia di caching e alla risoluzione dei conflitti nelle blocchi, è stato possibile ridurre significativamente i tempi di latenza. In generale, le prestazioni delle chiamate a Binder sono aumentate di circa il doppio, ma in alcune aree si sono registrati miglioramenti ancora più rilevanti. Ad esempio, la chiamata refContentProvider() è diventata 47 volte più veloce, releaseWakeLock() 15 volte più veloce, e JobScheduler.schedule() 7,9 volte più veloce.
    • Per prevenire possibili problemi di prestazioni, alle applicazioni è vietato avviare servizi in primo piano (foreground service) durante l'esecuzione in background, ad eccezione di alcuni casi speciali. Per eseguire operazioni mentre si è in background, si consiglia di utilizzare WorkManager. Per facilitare la transizione, è stato proposto un nuovo tipo di lavoro in JobScheduler, che si avvia immediatamente, ha una priorità elevata e accesso alla rete.
  • Modifiche che influiscono su sicurezza e riservatezza:
    • È stata implementata l'interfaccia Privacy Dashboard che fornisce una panoramica di tutte le impostazioni delle autorizzazioni, consentendo di comprendere a quali dati dell'utente le applicazioni hanno accesso. Nell'interfaccia è inoltre disponibile una linea temporale che visualizza la cronologia degli accessi delle applicazioni al microfono, alla fotocamera e ai dati sulla posizione. È possibile visualizzare dettagli e motivazioni per ogni applicazione riguardo l'accesso ai dati riservati.
      Uscita della piattaforma mobile Android 12
    • Nella dashboard sono stati aggiunti indicatori di attività per il microfono e la fotocamera, che appaiono quando un'applicazione accede alla fotocamera o al microfono. Cliccando sugli indicatori si apre un dialogo con le impostazioni, che consente di identificare quale applicazione sta utilizzando la fotocamera o il microfono e, se necessario, revocare le autorizzazioni.
    • Nel pop-up delle impostazioni rapide sono stati aggiunti interruttori che permettono di disattivare forzatamente il microfono e la fotocamera. Una volta disattivati, i tentativi di accesso alla fotocamera e al microfono porteranno alla visualizzazione di una notifica e all'invio di dati vuoti all'applicazione.
      Uscita della piattaforma mobile Android 12
    • È stata aggiunta una nuova notifica, mostrata nella parte inferiore dello schermo ogni volta che l'app cerca di leggere il contenuto degli appunti tramite la funzione getPrimaryClip(). Se il contenuto degli appunti viene copiato nella stessa app in cui è stato aggiunto, la notifica non viene visualizzata.
    • È stato aggiunto un permesso separato BLUETOOTH_SCAN per la scansione dei dispositivi vicini tramite Bluetooth. In precedenza, questa possibilità era fornita solo in presenza di accesso alle informazioni sulla posizione del dispositivo, il che richiedeva la concessione di autorizzazioni aggiuntive alle app che necessitano di accoppiarsi con un altro dispositivo tramite Bluetooth.
    • Il dialogo per la concessione dell'accesso alle informazioni sulla posizione del dispositivo è stato aggiornato. Ora gli utenti hanno la possibilità di condividere con l'app informazioni sulla posizione esatta o fornire solo dati approssimativi, oltre a limitare i permessi solo alla sessione attiva dell'app (disabilitando l'accesso in background). Il livello di precisione dei dati forniti quando si seleziona una posizione approssimativa può essere modificato nelle impostazioni, incluso il legame con singole applicazioni.
      Uscita della piattaforma mobile Android 12
    • Gli sviluppatori di applicazioni possono disattivare le finestre pop-up di avviso che coprono il contenuto. In precedenza, la possibilità di visualizzare queste finestre era regolata da una richiesta di autorizzazione, confermata durante l'installazione delle applicazioni che generano finestre sovrapposte. Non c'erano strumenti per influenzare la sovrapposizione dei contenuti provenienti da applicazioni con finestre sovrapposte. Utilizzando la chiamata Window#setHideOverlayWindows(), tutte le finestre che coprono il contenuto verranno ora automaticamente nascoste. Ad esempio, il nascondimento può essere attivato quando si visualizza informazioni particolarmente importanti, come la conferma di una transazione.
    • Le applicazioni hanno ora impostazioni aggiuntive per limitare le operazioni con le notifiche durante il blocco dello schermo. In precedenza era possibile gestire solo la visibilità delle notifiche durante il blocco dello schermo, ma ora è possibile attivare l'autenticazione obbligatoria per eseguire qualsiasi azione sulle notifiche durante il blocco dello schermo. Ad esempio, un'app di messaggistica può richiedere l'autenticazione prima di eliminare un messaggio o segnarlo come letto.
    • Aggiunto l'API PackageManager.requestChecksums() per richiedere e verificare il checksum di un'applicazione installata. Sono supportati algoritmi come SHA256, SHA512 e Merkle Root.
    • Nel motore web WebView è stata implementata la possibilità di utilizzare l'attributo SameSite per gestire i cookie. Il valore "SameSite=Lax" limita l'invio dei cookie per le sottoricheste cross-site, come la richiesta di immagini o il caricamento di contenuti tramite iframe da un altro sito. In modalità "SameSite=Strict", i cookie non vengono inviati per alcun tipo di richiesta cross-site, comprese tutte le link provenienti da siti esterni.
    • È stata proseguita l'implementazione della randomizzazione degli indirizzi MAC per escludere la possibilità di tracciamento del dispositivo durante la connessione a reti wireless. Per le applicazioni non privilegiate, l'accesso all'indirizzo MAC del dispositivo è limitato e la funzione getHardwareAddress() ora restituisce un valore vuoto.
  • Modifiche e miglioramenti a basso livello per gli sviluppatori di applicazioni:
    • È stata aggiunta la possibilità di adattare gli elementi dell'interfaccia ai dispositivi con schermi arrotondati. Gli sviluppatori ora possono ottenere informazioni sui bordi arrotondati dello schermo e correggere gli elementi dell'interfaccia che si trovano nelle aree angolari non visibili. Attraverso la nuova API RoundedCorner è possibile conoscere parametri come il raggio e il centro dell'arrotondamento, e attraverso Display.getRoundedCorner() e WindowInsets.getRoundedCorner() determinare le coordinate di ciascun angolo arrotondato dello schermo.
      Uscita della piattaforma mobile Android 12
    • È stato aggiunto un nuovo API CompanionDeviceService, che consente di attivare le applicazioni che gestiscono dispositivi associati, come smartwatch e fitness tracker. L'API risolve il problema avviando e collegando le applicazioni necessarie quando un dispositivo associato si trova nelle vicinanze. Il sistema attiva il servizio quando il dispositivo è nelle vicinanze e invia notifiche quando il dispositivo si disconnette o entra e esce dall'area visibile. Le applicazioni possono anche utilizzare il nuovo profilo dei dispositivi associati per semplificare la configurazione delle autorizzazioni per l'associazione con il dispositivo.
    • È stato migliorato il sistema di previsione della larghezza di banda. Le applicazioni possono ora richiedere informazioni sulla larghezza di banda totale prevista in relazione all'operatore, alla rete wireless specifica (SSID Wi-Fi), al tipo di rete e al livello del segnale.
    • L'applicazione dei tipici effetti visivi, come il blur e la distorsione dei colori, è stata semplificata. Ora possono essere applicati tramite l'API RenderEffect a qualsiasi oggetto RenderNode o all'intera area visibile, anche in catena con altri effetti. Questa funzionalità consente, ad esempio, di sfocare un'immagine visualizzata tramite ImageView, senza necessità di copiare, elaborare e sostituire esplicitamente il bitmap, delegando tali operazioni alla piattaforma. Inoltre, è stato proposto l'API Window.setBackgroundBlurRadius(), che permette di sfocare lo sfondo di una finestra con un effetto vetro smerigliato, mettendo in evidenza la profondità attraverso la sfocatura dello spazio circostante la finestra.
      Uscita della piattaforma mobile Android 12
    • Sono stati integrati strumenti per la ricodifica dei flussi multimediali, utilizzabili in ambienti con applicazioni per la gestione della fotocamera che salvano video in formato HEVC, per garantire la compatibilità con applicazioni che non supportano questo formato. Per tali applicazioni è stata aggiunta la funzione di ricodifica automatica in un formato più comune, l'AVC.
    • È stato aggiunto il supporto per il formato immagine AVIF (AV1 Image Format), che utilizza tecnologie di compressione intra-frame derivanti dal formato di codifica video AV1. Il contenitore per la distribuzione dei dati compressi in AVIF è completamente analogo a HEIF. AVIF supporta sia immagini in HDR (High Dynamic Range) e in spazi colore a gamma ampia, sia in gamma dinamica standard (SDR).
    • È stato proposto un API unificato OnReceiveContentListener per l'inserimento e lo spostamento tra applicazioni di contenuti avanzati (testo formattato, immagini, video, file audio, ecc.), utilizzando varie fonti di dati, inclusi il gusto degli appunti, la tastiera e l'interfaccia drag & drop.
    • È stato aggiunto un effetto di feedback tattile realizzabile tramite il vibromotore integrato nei telefoni, la cui frequenza e intensità di vibrazione dipendono dai parametri del suono riprodotto in quel momento. Questo nuovo effetto consente di percepire fisicamente il suono e può essere utilizzato per aumentare il realismo nei giochi e nei programmi audio.
    • In modalità immersiva, in cui il programma viene visualizzato a schermo intero nascondendo le barre di stato, la navigazione è semplificata tramite gesti di controllo. Ad esempio, nelle app per la lettura di libri, la visione di video e la gestione di foto, ora è possibile spostarsi con un semplice gesto di swiping.
    • Nell'ambito del progetto Mainline, che consente di aggiornare singoli componenti di sistema senza dover aggiornare l'intera piattaforma, sono stati preparati nuovi moduli di sistema aggiornabili oltre ai 22 moduli disponibili in Android 11. Gli aggiornamenti riguardano componenti non legati all'hardware, che vengono scaricati tramite Google Play separatamente dagli aggiornamenti OTA del firmware forniti dal produttore. Tra i nuovi moduli che potranno essere aggiornati tramite Google Play senza aggiornare il firmware ci sono ART (Android Runtime) e il modulo per la ricodifica dei video.
    • Nella classe WindowInsets è stata aggiunta un'API per determinare la posizione dei indicatori di utilizzo della fotocamera e del microfono (questi indicatori possono sovrapporsi ai controlli nelle app a schermo intero e tramite l'API specificata l'app può modificare la propria interfaccia).
    • Per i dispositivi gestiti in modo centralizzato è stata aggiunta la possibilità di disabilitare l'uso degli interruttori per spegnere il microfono e la fotocamera.
    • Per le applicazioni CDM (Companion Device Manager) eseguite in background, che gestiscono dispositivi accessori come smartwatch e tracker per il fitness, è stata fornita la possibilità di avviare servizi attivi (foreground).
    • Invece di sviluppare una versione per dispositivi indossabili Android Wear insieme a Samsung, si è deciso di sviluppare una nuova piattaforma unificata che combina le funzionalità di Android e Tizen.
    • Sono state ampliate le capacità delle versioni Android per sistemi infotainment automobilistici e smart TV.

    Fonte: opennet.ru

  • Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster