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 é qualificada para a verificação de assinatura depois que publica uma atualização.

Se a verificação de assinatura do seu projeto Android estiver ativada, siga estas etapas para conferir as dependências do Jetpack no projeto do Gradle:

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

    <trusted-keys>
        <trusted-key id="8461efa0e74abae010de66994eb27db2a3b88b8b">
            ...
        </trusted-key>
        <trusted-key id="a5f483cd733a4ebaea378b2ae88979fb9b30acf2">
            ...
        </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-key id="a5f483cd733a4ebaea378b2ae88979fb9b30acf2">
            <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 com a verificação de dependências (link em inglês).

Por fim, os detalhes sobre nossa chave confiável podem ser acessados no site do servidor de chaves do Ubuntu (em inglês).

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