Guida introduttiva ad Android Jetpack

Jetpack comprende una raccolta di librerie Android che incorporano e forniscono la compatibilità con le versioni precedenti nelle tue app per Android.

La guida di Jetpack all'architettura delle app offre una delle best practice e dell'architettura consigliata da prendere in considerazione creare la tua app per Android.

Le sezioni seguenti illustrano come iniziare a utilizzare i componenti Jetpack.

Usare una libreria Jetpack nell'app

Tutti i componenti di Jetpack sono disponibili nel Repository Maven di Google.

Apri il file settings.gradle e aggiungi il repository google() nel Blocco dependencyResolutionManagement { repositories {...}} come mostrato di seguito:

Alla moda

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        jcenter()
    }
}

Kotlin

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        jcenter()
    }
}

Potrai quindi aggiungere i componenti Jetpack, ad esempio i componenti dell'architettura come LiveData. e ViewModel, nell'interfaccia build.gradle, come mostrato qui:

Alla moda

dependencies {
    def lifecycle_version = "2.2.0"

    implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
    implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
    ...
}

Kotlin

dependencies {
    val lifecycle_version = "2.2.0"

    implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version")
    implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version")
    ...
}

Molte librerie Jetpack forniscono estensioni Android KTX come mostrato sopra con lifecycle-livedata-ktx e lifecycle-viewmodel-ktx. Le estensioni KTX si basano sull'API basata su Java, sfruttando le caratteristiche del linguaggio specifiche di Kotlin.

Per conoscere le nuove uscite della libreria Jetpack, consulta la pagina Uscite.

Basati su Kotlin e Le pagine di riferimento dell'API basate su Java sono disponibili per tutte le librerie Jetpack.

(Facoltativo) Verifica le dipendenze Jetpack

A partire da giugno 2023, il team Jetpack firmerà le biblioteche Jetpack. Questi le firme consentono agli sviluppatori di verificare che gli artefatti della libreria siano creati firmato da Google. Una biblioteca è idonea alla verifica della firma quando viene pubblica un aggiornamento.

Se per il tuo progetto Android è attiva la verifica della firma: per verificare le dipendenze Jetpack nel progetto Gradle:

  1. Aggiungi le chiavi attendibili di Google alla sezione <trusted-keys> in $PROJECT_ROOT/gradle/verification-metadata.xml:

    <trusted-keys>
        <trusted-key id="8461efa0e74abae010de66994eb27db2a3b88b8b">
            ...
        </trusted-key>
        <trusted-key id="a5f483cd733a4ebaea378b2ae88979fb9b30acf2">
            ...
        </trusted-key>
        ...
    </trusted-keys>
    
  2. Aggiungi una voce <trusting group> per ogni libreria utilizzata dal progetto. Ecco un esempio per le librerie androidx.fragment e androidx.emoji2:

    <trusted-keys>
        <trusted-key id="8461efa0e74abae010de66994eb27db2a3b88b8b">
            <trusting group="androidx.fragment"/>
            <trusting group="androidx.emoji2"/>
        </trusted-key>
        <trusted-key id="a5f483cd733a4ebaea378b2ae88979fb9b30acf2">
            <trusting group="androidx.fragment"/>
            <trusting group="androidx.emoji2"/>
        </trusted-key>
        ...
    </trusted-keys>
    

Per problemi con la verifica delle dipendenze, consulta la guida di Gradle sulle risoluzione dei problemi di verifica delle dipendenze.

Infine, i dettagli sulla nostra chiave attendibile possono essere visualizzati nella Sito keyserver di Ubuntu.

Approfitta di Jetpack

Le librerie Jetpack possono essere utilizzate da sole o in combinazione per soddisfare esigenze diverse nelle tue app.

  • WorkManager per le tue esigenze di pianificazione in background.
  • Spazio per la persistenza dell'archiviazione dei dati.
  • Navigazione per gestire il flusso di navigazione dell'applicazione.
  • CameraX per le esigenze dell'app Fotocamera.
  • Consulta la panoramica di tutte le librerie Jetpack.

Le librerie Jetpack sono pubblicate nello spazio dei nomi androidx. Se il tuo progetto attualmente utilizza la libreria di assistenza Android, scopri come eseguire la migrazione al spazio dei nomi androidx.

Per scoprire di più sull'utilizzo di Jetpack, dai un'occhiata a queste pagine:

Risorse aggiuntive

Formazione online

Codice di esempio

  • L'app demo Sunflower usa molti componenti Jetpack diversi per dimostrare le migliori soluzioni di sviluppo Android pratiche.

Codelab

Video