Configurazione della libreria di supporto

Nota: con il rilascio di Android 9.0 (livello API 28) è disponibile una nuova versione della libreria di supporto chiamata AndroidX, che fa parte di Jetpack. La libreria AndroidX contiene la libreria di supporto esistente e include anche gli ultimi componenti Jetpack.

Puoi continuare a utilizzare la libreria di supporto. Gli artefatti storici (con versioni 27 e precedenti e pacchettizzati come android.support.*) rimarranno disponibili su Google Maven. Tuttavia, tutti i nuovi sviluppi delle librerie verranno eseguiti nella libreria AndroidX.

Ti consigliamo di utilizzare le librerie AndroidX in tutti i nuovi progetti. Dovresti anche prendere in considerazione la migrazione dei progetti esistenti ad AndroidX.

La configurazione delle librerie di supporto 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 ti guida nel download del pacchetto della Support Library e nell'aggiunta di librerie all'ambiente di sviluppo.

Le librerie di supporto sono ora disponibili tramite il repository Maven di Google. Non supportiamo più il download delle librerie tramite SDK Manager e questa funzionalità verrà rimossa a breve.

Scegliere le librerie di supporto

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

Aggiungere librerie di supporto

Per utilizzare una Support Library, devi modificare le dipendenze del classpath del progetto dell'applicazione all'interno dell'ambiente di sviluppo. Devi eseguire questa procedura per ogni Support Library che vuoi utilizzare.

Per aggiungere una Support Library al progetto dell'applicazione:

  1. Includi il repository Maven di Google nel file settings.gradle del 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 Support Library, aggiungi la libreria nel dependencies blocco 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'utilizzo di dipendenze dinamiche (ad esempio, palette-v7:23.0.+) può causare aggiornamenti di versione imprevisti e incompatibilità di regressione. Ti consigliamo di specificare esplicitamente una versione della libreria (ad esempio, palette-v7:28.0.0).

Utilizzare le API della libreria di supporto

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

Attenzione: quando utilizzi le classi della Support Library, assicurati di importare la classe dal pacchetto appropriato. Ad esempio, quando applichi la ActionBar classe:

  • android.support.v7.app.ActionBar quando utilizzi la Support Library.
  • android.app.ActionBar quando sviluppi solo per il livello API 11 o versioni successive.

Nota: dopo aver incluso la Support Library 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 incluse nell'applicazione, mantenendo le dimensioni del download dell'applicazione il più piccole possibile.

Ulteriori indicazioni per l'utilizzo di alcune funzionalità della Support Library sono fornite nelle classi di formazione, guide e negli esempi per sviluppatori Android. Per saperne di più sulle singole classi e sui singoli metodi della Support Library, consulta i android.support pacchetti nel Riferimento API.

Modifiche alla dichiarazione del manifest

Se stai aumentando la compatibilità con le versioni precedenti 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 <uses-sdk> tag nel manifest al nuovo numero di versione inferiore, come mostrato di seguito:

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

L'impostazione del 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 i 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 indica a Google Play che la variante di compilazione 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 panoramica del sistema di build.

Nota: se includi diverse librerie di supporto, la versione SDK minima deve essere la versione più alta richiesta da una delle librerie specificate. Ad esempio, se la tua app include sia la libreria di supporto Preference v14 sia la libreria Leanback v17, la versione SDK minima deve essere 17 o superiore.