Tech

Riepilogo Android Q AMA: modifiche agli screenshot di Android R, chiarimento della modalità desktop, modalità scura basata sul tempo e altro

L'anno scorso, il team Android di Google ha ospitato un Ask Me Anything (AMA) sul subreddit di Reddit / r / AndroidDev per rispondere alle domande sull'anteprima per sviluppatori di Android P.
Quest'anno, il team di ingegneri che lavorava su Android Q beta ha risposto alle domande su Reddit.
L'AMA è iniziato il 1 agosto alle 12:00 PST e si è concluso circa un'ora e mezza dopo.
33 ingegneri di Google sono stati coinvolti nell'AMA, rispondendo a un sacco di domande nel breve periodo di durata dell'AMA.
Ecco il nostro riepilogo di tutte le nuove informazioni che abbiamo appreso.
Android Q AMA: tutto ciò che abbiamo imparato dai partecipanti a Google dal team beta di Android Q Adam Cohen: TLM su Android Launcher / UI del sistema Adam Powell: TLM su UI toolkit / framework; visualizzazioni, ciclo di vita, frammenti, librerie di supporto Alan Viverette: TLM, Jetpack / AndroidX Allen Huang: PM per UI, launcher, notifiche, integrazioni di ricerca e altro! Andrew Sappirstein: TLM su Impostazioni Android Brahim Elbouchikhi: Direttore PM per Android Machine Learning e Camera (API NN, Kit ML, CameraX, Piattaforma videocamera) Chad Brubaker: Ingegnere software, Sicurezza piattaforma Android Charmaine D'Silva: PM per Privacy Chet Haase: Android Chief Advocate, Relazioni con gli sviluppatori Diana Wong: PM, Compatibilità delle app, utilizzo API non SDK, ART, NDK Dianne Hackborn: Manager del team framework Android (Risorse, Window Manager, Activity Manager, Multi-user, Stampa, Accessibilità, ecc.
.) EK Chung: Direttore di UX Ian Lake: Ingegnere del software, Jetpack (Frammenti, Navigazione, Componenti di architettura) Iliyan Malchev: Ingegnere del software principale, Mainline del progetto Jacob Lehrbaum: Direttore delle relazioni con gli sviluppatori per Android Jake Wharton: Ingegnere del software, Jetpack Jamal Eason : PM, Studio Android Jeff Bailey: TLM, Progetto Android Open Source (AOSP) Jeff Sharkey: Ingegnere software, Framework Android Jeffrey van Gogh: Android Studio, Compilatori Jen Chai: PM, Location and Con testo, Auth, Compilazione automatica, utilizzo API non SDK, ART Karen Ng: Group PM per strumenti per sviluppatori Android, Android Studio, Android Tookit e Jetpack Paul Bankhead: direttore della gestione dei prodotti, Google Play Rohan Shah: responsabile dei prodotti, interfaccia utente del sistema Android Romain Guy: Manager del team Android Toolkit / Jetpack Sagar Kamdar: direttore della gestione dei prodotti, Android Sat K: direttore dell'ingegneria, connettività Android Selim Cinek: ingegnere del software, interfaccia utente del sistema Android Stephanie Saad Cuthbertson: direttore senior della gestione dei prodotti, Sumir Kataria per Android : Ingegnere del software, Jetpack (WorkManager) Travis McCoy: PM, piattaforma Android Tryststst: ingegnere illustre, lead per interfaccia utente del sistema Android e Intelligence Vinit Modi: PM, OEM di fotocamere Android non possono più uccidere le app quando l'utente le trascina via nei recenti hai mai usato uno smartphone di un marchio cinese, quindi probabilmente hai a che fare con fastidiose funzionalità di "ottimizzazione della batteria" che uccidono tutte le tue app preferite in background.
Questo comportamento non è solo fastidioso per gli utenti che si aspettano che determinate app continuino a essere eseguite in background per qualsiasi motivo, ma è anche fastidioso per gli sviluppatori che devono subire recensioni negative da parte di utenti che non comprendono che non è colpa dell'app.
Sebbene Google non stia ancora affrontando completamente la questione (hanno sventato il problema con la mano dichiarando che questo comportamento è probabilmente già in violazione dei requisiti del Documento di definizione della compatibilità Android), la società sta intraprendendo un'azione contro un cambiamento di comportamento di "risparmio batteria" impiegato da alcuni OEM.
"Per aiutare con la situazione, abbiamo aggiunto un test CTS in Android Q per garantire che un'app non venga uccisa al momento del passaggio da Recents." Android R potrebbe apportare più modifiche agli screenshot di quanto ci aspettassimo Google prevede di aggiungere screenshot scorrevoli in Android R, ma allo stesso tempo, il team di Android sta “esaminando da vicino come [loro] possono migliorare l'intera esperienza dello schermo- [X] per R.” Quindi, potremmo vedere altri miglioramenti allo screenshot (E screencast ) comportamento nella prossima versione principale di Android.
Chiarire la nuova modalità desktop di Android Q La prima versione beta pubblica di Android Q ha portato un'interfaccia nascosta in modalità desktop per AOSP e Pixel Launcher.
Sebbene Google abbia brevemente toccato la funzione durante una sessione di I / O di Google, non abbiamo mai sentito direttamente da Google come la nuova funzionalità si adatta all'ecosistema Android.
Google ora chiarisce: "In Q 'modalità desktop' AOSP è un'opzione sviluppatore destinata agli sviluppatori di applicazioni.
Consente loro di testare le proprie app in ambienti multi-display e in modalità finestra a forma libera.
In precedenza non esisteva un modo conveniente per testare il comportamento delle app su uno schermo secondario e con finestre ridimensionabili liberamente su Android di serie.
Questa funzione non è prodotta da sola e al momento non è pensata per gli utenti regolari.
Tuttavia, è la base della piattaforma Android per gli OEM a innovare e realizzare ottimi prodotti.
”Pertanto, possiamo aspettarci di vedere gli OEM costruire sulla modalità desktop nativa di Android Q.
Ad esempio, OnePlus 7 Pro supporta la visualizzazione tramite HDMI, quindi è possibile che OxygenOS 10 basato su Android Q disponga in futuro di una propria interfaccia in modalità desktop.
Speriamo anche che Google si basi sulla funzionalità per l'imminente Pixel 4.
Modalità scura basata sul tempo Android Q porta finalmente una funzionalità ampiamente richiesta: la modalità scura a livello di sistema.
Attualmente, la modalità scura può essere abilitata manualmente in Impostazioni o tramite un riquadro Impostazioni rapide, oppure può essere attivata automaticamente quando è abilitato Risparmio batteria.
Prima di Android Q, c'era un'opzione per abilitare la modalità oscura in base all'ora del giorno, ma quell'opzione era obsoleta.
Secondo Chris Banes: "Ci sono alcuni motivi per cui questo è deprecato (non rimosso) in AppCompat v1.1.0: richiede che le app richiedano le autorizzazioni di posizione per essere accurate e anche con una posizione valida i calcoli dell'ora di alba / tramonto possono essere buggy.
"Alla domanda su questi bug, il signor Banes afferma che" calcolare l'alba / i tramonti è notoriamente difficile, specialmente per le località vicine ai poli nord / sud ".
Un utente attiva quella luce notturna, disponibile da Android 7.1 Nougat, può essere commutato automaticamente in base agli orari del tramonto / alba.
Banes afferma quindi che, dal momento che Night Light utilizza CalendarAstronomer di ICU4J, utilizza un "grosso pezzo di codice su cui non vorremmo che AppCompat dipendesse".
Tuttavia, il team afferma che questa funzione è "qualcosa che [loro] guarda in dettaglio.
”Obbligatorio Camera2 API / Camera HAL3 supporto per dispositivi di lancio Android Q Google ha introdotto l'API Camera2 per definire meglio come le app possono interagire con le singole telecamere collegate al tuo smartphone.
Mentre Google incoraggia i venditori di smartphone a "esporre tutte le loro fotocamere fisiche agli sviluppatori", molti fornitori scelgono di non farlo anche se "l'API stessa non li sta impedendo oggi".
Ciò significa che molte app di fotocamere di terze parti non possono utilizzare le secondarie o moduli di telecamere terziari su smartphone moderni.
Si stanno facendo progressi, tuttavia, poiché Android Q ha migliorato LOGICAL_MULTI_CAMERA, un'API che offre agli sviluppatori un migliore accesso a tutte le telecamere su un dispositivo e che offre agli OEM il controllo sul consumo energetico e sulla gestione di più stati della telecamera.
Inoltre, Google afferma di aver aggiunto i requisiti per tutti i dispositivi che si avviano con Android Q per supportare nativamente API2 Camera2 / Camera HAL3.
Secondo Vinit Modi: “A partire da Android P, per utilizzare nativamente HALv3 / camera2 sono necessari nuovi dispositivi con 1 GB o più di RAM.
Android Q in poi sono necessari tutti i nuovi dispositivi per supportare nativamente HALv3 / camera2.
Sfortunatamente gli aggiornamenti da HALv1 a HALv3 sono abbastanza complessi via etere e potrebbero avere conseguenze inaspettate, quindi abbiamo dovuto limitare l'ambito a nuovi dispositivi.
"È interessante notare che l'affermazione di Modi sui normali dispositivi di lancio RAM Android P contraddice ciò che ci è stato detto in precedenza da Google e pubblicato sulla pagina di Image Test Suite online.
Temi di app dinamici con Jetpack Compose Il framework di temi OMS di Sony è stato aggiunto ad AOSP alcune versioni precedenti, ma è destinato solo agli OEM su cui basarsi.
Sappiamo già che Google è contrario all'uso di sovrapposizioni di risorse di runtime da parte degli utenti per app a tema, ma per gli sviluppatori, la società spera che il suo framework IU Jetpack Compose porterà avanti "approcci interessanti al tema dinamico".
rendering dell'interfaccia utente L'anno scorso, abbiamo notato una discussione tra gli ingegneri di Google che parlavano dei loro piani per far sì che il framework Android usasse l'API grafica Vulkan per il rendering dell'interfaccia utente.
Sebbene sia ora possibile abilitare il back-end con accelerazione hardware Vulkan senza che il tuo telefono si blocchi, non abbiamo sentito alcun piano concreto da parte di Google quando intendono implementare queste modifiche.
Questo AMA non risponde a questa domanda, ma almeno abbiamo la conferma che è ancora in lavorazione.
Secondo Romain Guy: “Il team ha lavorato su un backend Vulkan per Skia, il renderer 2D utilizzato da Android, ma al momento non è abilitato per impostazione predefinita.
L'interfaccia utente e Canvas continuano a passare attraverso OpenGL ES.
”Rendere la barra dei gesti di Android Q più dinamica Alcuni su XDA pensano ancora che i nuovi gesti di Android siano un casino, ma personalmente penso che vadano bene.
Se giochi con i nuovi gesti in Android Q per un po ', noterai che la barra dei gesti non si muove con il dito.
Si attacca anche su schermi in cui non è necessario, come la schermata iniziale o la panoramica delle app recenti.
Allen Huang afferma che "concordano totalmente sul fatto che ci sono opportunità" per rendere la "linea di navigazione meno statica".
Dice inoltre che "questo è qualcosa su cui stiamo lavorando – ma anche bilanciamento in modo che non appaia / scompaia distrattamente".
Storage Access Framework Le numerose modifiche apportate ad Android Q hanno notevolmente migliorato la sicurezza e la privacy della piattaforma.
Uno di questi cambiamenti, chiamato "Scoped Storage", limita l'accesso delle app ai file sulla memoria esterna in modo sensato; le app musicali non dovrebbero avere bisogno di vedere la tua galleria, per esempio.
Le app di gestione file in esecuzione su Android Q devono utilizzare un'API denominata Storage Access Framework per continuare a funzionare normalmente, ma alcuni sviluppatori vedono questa API come inferiore a quella precedentemente disponibile.
Jeff Sharkey di Google afferma che il team ha affrontato alcune delle lamentele di questi sviluppatori: “Abbiamo apportato alcuni miglioramenti alle prestazioni SAF nelle ultime versioni di Android Q Beta; potresti verificare i tuoi benchmark rispetto all'ultima beta? Assicurati anche di utilizzare ContentProviderClient quando esegui operazioni collettive.
”Project Treble ha migliorato l'adozione di Android Pie rispetto a Android Oreo Abbiamo già visto come Project Treble, un'importante ricerca di basso livello del framework Android, ha migliorato l'adozione di nuovi Versioni del sistema operativo Android.
Google attribuisce agli alti il numero di venditori di smartphone che si sono uniti ad Android P beta lo scorso anno e Android Q beta quest'anno.
Iliyan Malchev, capo Project Treble e ingegnere di Mainline, afferma che l'adozione di Android Pie è stata "3 volte" quella di Android Oreo alla fine del 2018.
Nello stesso commento, Dick Dougherty prende in giro che sono disponibili metriche più utili per Android diagramma di distribuzione delle versioni.
Il grafico è stato aggiornato l'ultima volta a maggio, ma i suoi dati sono più utili per i giornalisti rispetto agli sviluppatori di app.
La registrazione dello schermo è ancora un WIP I primi beta di Android Q hanno aggiunto un flag di funzionalità per uno screen recorder di base, ma la piattaforma stessa ha notevolmente migliorato l'utilità della registrazione dello schermo consentendo alle app di catturare l'audio da altre app.
Stephanie Saad Cuthbertson ha affermato che il team sta valutando "come potremmo fare di meglio sulle esigenze di registrazione dello schermo di recente".
Altri marchi di smartphone come OnePlus, ASUS, Huawei e Samsung hanno robusti registratori di schermo che possono registrare l'audio interno, quindi Google lo farà suonare qui.
Dark Theme All The Things! Nel caso in cui tu l'abbia perso, Google sta aggiungendo la modalità oscura alla maggior parte delle loro app.
Stephanie Saad Cuthbertson afferma di aspettarsi che tutte le "app principali" supportino un tema oscuro "dalla versione ufficiale [Android Q]".
Anche Google Chrome, che attualmente impone un ricaricamento della pagina quando il tema oscuro a livello di sistema è abilitato, verrà aggiornato a non si aggiorna più quando si cambia il tema.
Sì, i lanciatori di terze parti funzionano con i gesti (eventualmente) I gesti di Android sono in qualche modo interrotti quando si utilizza un lanciatore di terze parti.
Questo perché l'interfaccia utente delle app recenti è contenuta nell'app di avvio stock e Google non ha ancora trovato un modo per avere le stesse transizioni continue che vediamo quando si usano i gesti con Pixel Launcher di serie.
Adam Cohen afferma i piani di Google di affrontare questi problemi "il più rapidamente possibile dopo il rilascio".
Dice inoltre che l'incompatibilità "verrà risolta nell'aggiornamento post-Q e supportata per il lancio di nuovi dispositivi con Q".
Ci sono molti più post nel thread completo su Reddit.
Ciò che ho trattato qui riassume tutte le nuove informazioni che abbiamo appreso, ma diversi Googler (in particolare Dianne Hackborn) entrano nel loro ragionamento dietro il taglio della funzione X o l'implementazione dell'autorizzazione Y.
Ti consiglio di leggere l'intero AMA se vuoi capire un po 'meglio il processo decisionale del team Android.
Leggi l'intero AMA su / r / AndroidDev Il sommario di Android Q AMA post: Modifiche agli screenshot di Android R, Chiarimento della modalità desktop, Modalità scura basata sul tempo e altro sono apparsi per primi sugli sviluppatori xda.

%d