Configurazione della libreria di supporto

Nota: con la release di Android 9.0 (livello API 28), è disponibile una nuova versione della libreria di supporto denominata AndroidX, che fa parte di Jetpack. La libreria AndroidX contiene la libreria di supporto esistente e include anche i componenti Jetpack più recenti.

Puoi continuare a utilizzare la libreria di assistenza. Gli artefatti storici (quelli con versione 27 e precedenti e pacchettizzati come android.support.*) rimarranno disponibili in Google Maven. Tuttavia, lo sviluppo di tutte le nuove librerie verrà eseguito nella libreria AndroidX.

Ti consigliamo di utilizzare le librerie AndroidX in tutti i nuovi progetti. Inoltre, dovresti valutare la migrazione di progetti esistenti su AndroidX.

La modalità di configurazione delle librerie di assistenza Android nel progetto di sviluppo dipende dalle funzionalità che vuoi utilizzare e dalla gamma di versioni della piattaforma Android che vuoi supportare con la tua applicazione.

Questo documento illustra come scaricare il pacchetto Support Library e aggiungere librerie all'ambiente di sviluppo.

Le librerie di assistenza sono ora disponibili tramite il repository Maven di Google. Il download delle librerie tramite SDK Manager non è più supportato e questa funzionalità verrà rimossa a breve.

Scegliere le librerie di assistenza

Prima di aggiungere una libreria di supporto alla tua applicazione, decidi quali funzionalità includere e le versioni più basse di Android che vuoi supportare. Per ulteriori informazioni sulle funzionalità fornite dalle diverse librerie, consulta la sezione Funzionalità della libreria di supporto.

Aggiunta di librerie di assistenza

Per utilizzare una libreria di supporto, devi modificare le dipendenze del percorso della classe del progetto dell'applicazione all'interno dell'ambiente di sviluppo. Devi eseguire questa procedura per ogni libreria di supporto che vuoi utilizzare.

Per aggiungere una libreria di supporto al progetto dell'applicazione:

  1. Includi il Repository Maven di Google nel file settings.gradle del tuo progetto.
    dependencyResolutionManagement {
        repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
        repositories {
            google()
    
            // If you're using a version of Gradle lower than 4.1, you must
            // instead use:
            //
            // maven {
            //     url 'https://maven.google.com'
            // }
        }
    }
    
  2. Per ogni modulo in cui vuoi utilizzare una libreria di supporto, aggiungi la libreria nel blocco dependencies del file build.gradle del modulo. Ad esempio, per aggiungere la libreria core-utils v4, aggiungi quanto segue:
    dependencies {
        ...
        implementation "com.android.support:support-core-utils:28.0.0"
    }
    

Attenzione: l'uso di dipendenze dinamiche (ad esempio, palette-v7:23.0.+) può causare aggiornamenti imprevisti delle versioni e incompatibilità di regressione. Ti consigliamo di specificare esplicitamente una versione della libreria (ad esempio palette-v7:28.0.0).

Utilizzo delle API Support Library

Le classi di Support Library che forniscono supporto per le API framework esistenti in genere hanno lo stesso nome della classe framework, ma si trovano nei pacchetti di classe android.support o hanno un suffisso *Compat.

Attenzione: quando utilizzi classi dalla libreria di supporto, assicurati di importarle dal pacchetto appropriato. Ad esempio, quando applichi la classe ActionBar:

  • android.support.v7.app.ActionBar quando utilizzi la Support Library.
  • android.app.ActionBar durante lo sviluppo solo per il livello API 11 o superiore.

Nota: dopo aver incluso la libreria di supporto nel progetto dell'applicazione, ti consigliamo vivamente di ridurre, offuscare e ottimizzare l'app per la release. Oltre a proteggere il codice sorgente con l'offuscamento, la riduzione rimuove le classi inutilizzate da tutte le librerie che includi nell'applicazione, riducendo al minimo le dimensioni di download dell'applicazione.

Ulteriori indicazioni sull'utilizzo di alcune funzionalità della libreria di supporto sono fornite nei corsi di formazione, nelle guide e negli esempi per sviluppatori Android. Per maggiori informazioni sulle singole classi e sui metodi della Support Library, consulta i pacchetti android.support nella documentazione di riferimento dell'API.

Modifiche alla dichiarazione del file manifest

Se stai aumentando la compatibilità della tua applicazione esistente a una versione precedente dell'API Android con la Support Library, assicurati di aggiornare il manifest dell'applicazione. In particolare, devi aggiornare l'elemento android:minSdkVersion del tag <uses-sdk> nel file manifest al nuovo numero di versione inferiore, come mostrato di seguito:

  <uses-sdk
      android:minSdkVersion="14"
      android:targetSdkVersion="23" />

L'impostazione del file manifest indica a Google Play che la tua applicazione può essere installata su dispositivi con Android 4.0 (livello API 14) e versioni successive.

Se utilizzi file di build Gradle, l'impostazione minSdkVersion nel file di build sostituisce le impostazioni del manifest.

plugins {
  id 'com.android.application'
}

android {
    ...

    defaultConfig {
        minSdkVersion 16
        ...
    }
    ...
}

In questo caso, l'impostazione del file di build comunica a Google Play che la variante di build predefinita della tua applicazione può essere installata su dispositivi con Android 4.1 (livello API 16) e versioni successive. Per saperne di più sulle varianti di build, consulta la pagina Panoramica del sistema di build.

Nota: se includi diverse librerie di supporto, la versione minima dell'SDK deve essere la versione più elevata richiesta da una qualsiasi delle librerie specificate. Ad esempio, se la tua app include sia la libreria di supporto per le preferenze v14 sia la libreria Leanback v17, la versione minima dell'SDK deve essere 17 o successiva.