Attivare l'ottimizzazione delle app

Per garantire la migliore esperienza utente, devi ottimizzare la tua app per renderla il più piccola e veloce possibile. Il nostro ottimizzatore di app, chiamato R8, semplifica la tua app rimuovendo codice e risorse inutilizzati, riscrivendo il codice per ottimizzare le prestazioni di runtime e altro ancora. Per i tuoi utenti, questo significa:

  • Avvii più rapidi
  • Rendering e prestazioni di runtime migliorati
  • Meno ANR

Per attivare l'ottimizzazione dell'app, imposta isMinifyEnabled = true (per l'ottimizzazione del codice) e isShrinkResources = true (per l'ottimizzazione delle risorse) nello script di build a livello di app della build di rilascio, come mostrato nel codice seguente. Ti consigliamo di attivare sempre entrambe le impostazioni. Ti consigliamo inoltre di attivare l'ottimizzazione dell'app solo nella versione finale dell'app che testi prima della pubblicazione, in genere la build di rilascio, perché le ottimizzazioni aumentano il tempo di compilazione del progetto e possono rendere più difficile il debug a causa del modo in cui modificano il codice.

Kotlin

android {
    buildTypes {
        release {

            // Enables code-related app optimization.
            isMinifyEnabled = true

            // Enables resource shrinking.
            isShrinkResources = true

            proguardFiles(
                // Default file with automatically generated optimization rules.
                getDefaultProguardFile("proguard-android-optimize.txt"),

                ...
            )
            ...
        }
    }
    ...
}

Trendy

android {
    buildTypes {
        release {

            // Enables code-related app optimization.
            minifyEnabled true

            // Enables resource shrinking.
            shrinkResources true

            // Default file with automatically generated optimization rules.
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt')

            ...
        }
    }
}

Ottimizzare la riduzione delle risorse per app ancora più piccole

La versione 8.12.0 del plug-in Android per Gradle (AGP) introduce la riduzione ottimizzata delle risorse, che mira a integrare l'ottimizzazione delle risorse e del codice per creare app ancora più piccole e veloci.

Attivare la riduzione ottimizzata delle risorse

Per attivare la nuova pipeline di riduzione delle risorse ottimizzata per una versione di AGP precedente alla 9.0.0, aggiungi quanto segue al file gradle.properties del progetto:

android.r8.optimizedResourceShrinking=true

Se utilizzi AGP 9.0.0 o una versione successiva, non devi impostare android.r8.optimizedResourceShrinking=true. La riduzione ottimizzata delle risorse viene applicata automaticamente quando isShrinkResources = true è attivato nella configurazione della build.

Verificare e configurare le impostazioni di ottimizzazione R8

Per consentire a R8 di utilizzare tutte le sue funzionalità di ottimizzazione, rimuovi la seguente riga dal file gradle.properties del progetto, se presente:

android.enableR8.fullMode=false # Remove this line from your codebase.

Tieni presente che l'attivazione dell'ottimizzazione dell'app rende difficile la comprensione delle analisi dello stack, soprattutto se R8 rinomina i nomi di classi o metodi. Per ottenere stack trace che corrispondano correttamente al tuo codice sorgente, consulta Recuperare lo stack trace originale.

Se R8 è abilitato, devi anche creare profili di avvio per prestazioni di avvio ancora migliori.

Se attivi l'ottimizzazione delle app e si verificano errori, ecco alcune strategie per risolverli: