Primeiros passos com o Android Jetpack

O Jetpack engloba uma coleção de bibliotecas Android que incorporam práticas recomendadas e oferecem compatibilidade com versões anteriores em apps para Android.

O guia do Jetpack para arquitetura de apps traz uma visão geral das práticas e arquitetura recomendadas que você precisa considerar ao criar um app para Android.

As seções abaixo descrevem como começar a usar os componentes do Jetpack.

Usar uma biblioteca do Jetpack no seu app

Todos os componentes do Jetpack estão disponíveis no repositório Maven do Google.

Abra o arquivo settings.gradle e adicione o repositório google() ao bloco dependencyResolutionManagement { repositories {...}}, como mostrado abaixo:

Groovy

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

Kotlin

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

Em seguida, você pode adicionar componentes do Jetpack, por exemplo, componentes de arquitetura como LiveData e ViewModel, ao arquivo build.gradle do seu módulo, como mostrado abaixo:

Groovy

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")
    ...
}

Muitas bibliotecas do Jetpack oferecem extensões do Android KTX, conforme mostrado acima em lifecycle-livedata-ktx e lifecycle-viewmodel-ktx. As extensões KTX são criadas de acordo com a API baseada em Java, aproveitando recursos de linguagem específicos do Kotlin.

Para conhecer as novas versões da biblioteca do Jetpack, consulte a página Versões.

Páginas de referência de APIs baseadas em Kotlin e em Java estão disponíveis para todas as bibliotecas do Jetpack.

Verificar dependências do Jetpack (opcional)

Desde junho de 2023, a equipe do Jetpack assina as bibliotecas do Jetpack. Essas assinaturas permitem que os desenvolvedores verifiquem se os artefatos da biblioteca foram criados e assinados pelo Google. Uma biblioteca está qualificada para a verificação de assinatura depois de publicar uma atualização.

Se o projeto Android tiver a verificação de assinatura ativada, estas são as etapas para verificar as dependências do Jetpack no projeto do Gradle:

  1. Adicione a chave confiável do Google à seção <trusted-keys> em $PROJECT_ROOT/gradle/verification-metadata.xml:

    <trusted-keys>
        <trusted-key id="8461efa0e74abae010de66994eb27db2a3b88b8b">
            ...
        </trusted-key>
        ...
    </trusted-keys>
    
  2. Adicione uma entrada <trusting group> para cada biblioteca que o projeto estiver usando. Confira um exemplo para as bibliotecas androidx.fragment e androidx.emoji2:

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

Para problemas com a verificação de dependências, acesse o guia do Gradle sobre solução de problemas de verificação de dependências (link em inglês).

Por fim, os detalhes sobre nossa chave confiável podem ser consultados no site do servidor de chaves do Ubuntu.

Aproveitar o Jetpack ao máximo

As bibliotecas do Jetpack podem ser usadas sozinhas ou combinadas para atender a diferentes necessidades dos seus apps.

  • WorkManager para as necessidades de programação em segundo plano
  • Room para persistência de armazenamento de dados
  • Navigation para gerenciar o fluxo de navegação do seu app
  • CameraX para as necessidades dos apps de câmera
  • Consulte a Visão geral de todas as bibliotecas do Jetpack.

As bibliotecas do Jetpack são publicadas no namespace androidx. Se o projeto atualmente usa a Biblioteca de Suporte do Android, leia como migrar para o namespace androidx.

Para saber mais sobre o uso do Jetpack, consulte estas páginas:

Outros recursos

Treinamento on-line

Amostra de código

  • O app de demonstração Sunflower usa muitos componentes diferentes do Jetpack para demonstrar as práticas recomendadas de desenvolvimento do Android.

Codelabs

Vídeos