I profili di base migliorano la velocità di esecuzione del codice di circa il 30% dal primo avvio evitando i passaggi di interpretazione e compilazione just-in-time (JIT) per i percorsi di codice inclusi. Se includi un profilo di baseline in un'app o in una libreria, consenti ad Android Runtime (ART) di ottimizzare i percorsi del codice inclusi tramite la compilazione ahead-of-time (AOT), migliorando le prestazioni per ogni nuova installazione di app e ogni aggiornamento dell'app. Questa ottimizzazione guidata dal profilo (PGO) consente alle app di ottimizzare l'avvio, ridurre i problemi di interazione e migliorare le prestazioni complessive del runtime dal primo avvio per gli utenti finali.
Comporre considerazioni sulle prestazioni
Compose viene distribuito come libreria anziché come parte della piattaforma Android. Questo approccio consente al team di Compose di aggiornare Compose di frequente e supportare un'ampia gamma di versioni di Android. Tuttavia, la distribuzione di Compose come libreria comporta un costo.
Il codice della piattaforma Android è già compilato e installato sul dispositivo. Le librerie, tuttavia, devono essere caricate all'avvio dell'app e interpretate JIT quando necessario. Questo può rallentare l'app all'avvio e quando utilizza una funzionalità della libreria per la prima volta.
Vantaggi dei profili di base
Puoi migliorare le prestazioni definendo i profili di base. Questi profili definiscono le classi e i metodi necessari nei percorsi utente critici e vengono distribuiti con l'APK o l'AAB della tua app. Durante l'installazione dell'app, ART compila questo codice critico AOT in modo che sia pronto per l'uso all'avvio dell'app.
Una buona definizione del profilo di baseline non è sempre semplice e, per questo motivo, Compose ne include uno per impostazione predefinita. Potresti non dover fare nulla per vedere questo vantaggio. Tuttavia, il profilo di baseline incluso in Compose contiene solo ottimizzazioni per il codice all'interno della libreria Compose.
Macrobenchmark
Per ottenere l'ottimizzazione migliore, crea un profilo di baseline per la tua app che utilizza Macrobenchmark per coprire i percorsi utente critici. Quando definisci il tuo profilo, devi testarlo per verificare che sia utile. Un buon modo per farlo è scrivere test Macrobenchmark per la tua app e controllare i risultati dei test mentre scrivi e rivedi il profilo di baseline.
Per un esempio di come scrivere test Macrobenchmark per la tua UI di Compose, consulta l'esempio di Macrobenchmark Compose.
Risorse aggiuntive
- Guida alle prestazioni delle app: scopri best practice, librerie e strumenti per migliorare le prestazioni su Android.
- Ispeziona le prestazioni: ispeziona le prestazioni dell'app.
- Benchmarking: confronta le prestazioni dell'app.
- Avvio dell'app: ottimizza l'avvio dell'app.
- Profili di baseline: scopri di più sui profili di baseline.