Eventi e programmi
Ottimizzazione completa: riepilogo della settimana di Performance Spotlight
Lettura di 3 minuti
Abbiamo trascorso l'ultima settimana approfondendo le best practice e le linee guida che aiutano a rendere le app per Android più veloci, più piccole e più stabili. Dalle funzionalità di base dell'ottimizzatore R8 e delle ottimizzazioni guidate dal profilo ai miglioramenti delle prestazioni con Jetpack Compose, fino a una nuova guida su come migliorare le prestazioni della tua app, abbiamo trattato gli strumenti a basso sforzo e ad alto impatto di cui hai bisogno per creare un'app performante.
Questo post funge da indice e roadmap per rivedere queste risorse ogni volta che devi ottimizzare. Ecco i cinque concetti chiave del nostro percorso insieme.
Utilizzare l'ottimizzatore R8 per velocizzare l'app
La modifica più efficace e semplice che puoi apportare è l'attivazione completa dell'ottimizzatore R8. Non si limita a ridurre le dimensioni dell'app, ma esegue ottimizzazioni profonde dell'intero programma per riscrivere fondamentalmente il codice in modo più efficiente. Rivedi le regole di Keep e riprendi a utilizzare R8 nelle tue attività di ingegneria.
La nostra documentazione aggiornata e ampliata sull'ottimizzatore R8 è a tua disposizione.
Reddit ha osservato un avvio a freddo più rapido del 40% e il 30% in meno di errori ANR dopo aver attivato la modalità completa R8.
Puoi leggere il case study completo sul nostro blog.
Gli ingegneri di Disney+ investono nelle prestazioni dell'app e ne ottimizzano l'esperienza utente. A volte anche cambiamenti apparentemente piccoli possono avere un impatto enorme. Durante l'ispezione della configurazione R8, il team ha scoperto che veniva utilizzato il flag -dontoptimize. Dopo aver attivato le ottimizzazioni rimuovendo questo flag, il team di Disney+ ha riscontrato miglioramenti significativi nel rendimento della propria app.
La prossima volta che qualcuno ti chiede cosa potresti fare per migliorare le prestazioni dell'app, inviagli il link a questo post.
Scopri di più nel nostro blog del primo giorno: Utilizza R8 per ridurre, ottimizzare e velocizzare la tua app
Indicazioni per un rendimento migliore
I profili di base eliminano efficacemente la necessità di compilazione Just in Time, migliorando la velocità di avvio, lo scorrimento, l'animazione e le prestazioni di rendering complessive. I profili di avvio rendono l'avvio delle app ancora più leggero, grazie a un ordine intelligente dei file classes.dex dell'app.
Per scoprire di più sull'importanza dei profili di baseline per le prestazioni dell'app, leggi il blog di ingegneria di Meta, in cui viene spiegato come i profili di baseline hanno migliorato varie metriche sul rendimento critiche fino al 40% nelle loro app.
Continuiamo a migliorare le prestazioni di Jetpack Compose in Jetpack Compose 1.10. Funzionalità come la composizione in pausa e la finestra della cache personalizzabile sono fondamentali per mantenere lo scorrimento fluido quando si ha a che fare con elementi di elenco complessi.Dai un'occhiata all'ultimo episodio di #TheAndroidShow in cui spieghiamo questo aspetto in modo più dettagliato.
Scopri di più nel nostro blog di mercoledì: Considerazioni più approfondite sul rendimento
Misurare il rendimento è facile come contare fino a 3
Non puoi gestire ciò che non misuri. La nostra guida al livellamento delle prestazioni suddivide il percorso di misurazione in cinque passaggi, a partire dai dati facilmente disponibili fino agli strumenti locali avanzati.
A partire dal livello 1, ti mostreremo come utilizzare i dati facilmente disponibili di Android vitals, che fornisce dati sul campo relativi a errori ANR, arresti anomali e utilizzo eccessivo della batteria.
Ti insegneremo anche come salire di livello. Ad esempio, mostreremo come raggiungere il livello 3 con i test delle prestazioni locali utilizzando Jetpack Macrobenchmark e la nuova API UiAutomator 2.4 per misurare e verificare con precisione qualsiasi modifica delle prestazioni della tua app.
Scopri di più nel nostro blog di giovedì: [Link al blog di giovedì: Guida al livellamento per il tuo percorso di rendimento]
Il debug delle prestazioni ha appena fatto l'upgrade
L'ottimizzazione avanzata non deve significare report sugli arresti anomali illeggibili. Le nuove funzionalità sono progettate per aiutarti a eseguire il debug di R8 e del lavoro in background in tutta sicurezza:
Automatic Logcat Retrace
A partire da Android Studio Narwhal, le analisi dello stack possono essere deoffuscate automaticamente nella finestra Logcat. In questo modo, puoi visualizzare ed eseguire il debug immediatamente di eventuali arresti anomali in una build pronta per la produzione.
Restringere le regole di conservazione
Martedì abbiamo demistificato le regole Keep necessarie per correggere gli arresti anomali di runtime, sottolineando l'importanza di scrivere regole specifiche a livello di membro rispetto a caratteri jolly eccessivamente ampi. E poiché si tratta di un argomento importante, abbiamo realizzato anche un video.
Inoltre, con il nuovo controllo lint per le regole di mantenimento estese, il Feature Drop di Android Studio Otter 3 ti offre una copertura completa anche in questo caso.
Abbiamo anche pubblicato nuove linee guida su test e risoluzione dei problemi della configurazione R8 per aiutarti a configurarla correttamente e in tutta sicurezza.
Scopri di più nel nostro blog di martedì: Configurare e risolvere i problemi relativi alle regole di conservazione R8
Background Work
Abbiamo condiviso indicazioni sul debug degli scenari comuni che potresti incontrare durante la pianificazione delle attività con WorkManager.
Background Task Inspector offre una rappresentazione visiva e una visualizzazione a grafico delle attività di WorkManager, aiutando a eseguire il debug del motivo per cui il lavoro pianificato è in ritardo o non è riuscito. Inoltre, la nostra pagina di destinazione della documentazione relativa al lavoro in background aggiornata mette in evidenza le API specifiche per attività ottimizzate per casi d'uso particolari, aiutandoti a ottenere un'esecuzione più affidabile.
Scopri di più nel nostro blog di mercoledì: Considerazioni sul rendimento del lavoro in background
L'ottimizzazione del rendimento è un percorso continuo
Se questa settimana hai accettato la nostra sfida per attivare la modalità completa R8, il passaggio successivo consiste nell'integrazione del rendimento nella roadmap del prodotto utilizzando il punteggio di rendimento dell'app. Questo framework standardizzato ti aiuta a trovare gli elementi di azione con la leva più alta per un miglioramento continuo.
Abbiamo concluso la settimana con la sessione di domande e risposte #AskAndroid Live, in cui gli ingegneri hanno risposto alle domande più difficili su R8, Profile Guided Optimizations e altro ancora. Se l'hai perso, cerca la replica.
Grazie per aver partecipato. Ora inizia a creare e continua così.
Continua a leggere
-
Eventi e programmi
Iniziamo con la modifica più efficace e semplice che puoi apportare per migliorare il rendimento della tua app: l'attivazione dell'ottimizzatore R8 in modalità completa.
Ben Weiss • Lettura di 5 minuti
-
Eventi e programmi
Il programma di Google I/O è arrivato.
Lettura di 1 minuto
-
Eventi e programmi
Lo scorso settembre abbiamo condiviso la nostra vision per il futuro di Google Play Games basata su una convinzione fondamentale: il modo migliore per favorire il successo del tuo gioco è offrire un'esperienza di gioco di livello mondiale.
Maru Ahues Bouza • Lettura di 3 minuti
Segui gli aggiornamenti
Ricevi ogni settimana gli ultimi approfondimenti sullo sviluppo per Android direttamente nella tua casella di posta.