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 as dependências do Jetpack (opcional)

Desde junho de 2023, a equipe assina as bibliotecas do Jetpack. Esses as assinaturas permitem que os desenvolvedores verifiquem se os artefatos da biblioteca foram criados e assinado pelo Google. Uma biblioteca se qualifica para a verificação de assinatura quando publica uma atualização.

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

  1. Adicione as chaves confiáveis do Google à seção <trusted-keys> do $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 Resolver problemas na verificação de dependências.

Por fim, os detalhes sobre nossa chave confiável podem ser visualizados em Site de 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