Configuração da Biblioteca de Suporte

Observação: com o lançamento do Android 9.0 (API de nível 28), há uma nova versão da Biblioteca de Suporte denominada AndroidX, que faz parte do Jetpack. O AndroidX contém a Biblioteca de Suporte existente e inclui os componentes mais recentes do Jetpack.

Você pode continuar usando a Biblioteca de Suporte. Os artefatos históricos com versões 27 e anteriores, e empacotados como android.support.*, permanecerão disponíveis no Google Maven. No entanto, todo o desenvolvimento da nova biblioteca ocorrerá na biblioteca AndroidX.

Recomendamos o uso das bibliotecas AndroidX em todos os novos projetos. Considere também migrar os projetos existentes para o AndroidX.

A forma de configurar as Bibliotecas de Suporte do Android no seu projeto de desenvolvimento depende dos recursos que você quer usar e a qual variedade de versões da Plataforma Android quer oferecer suporte ao aplicativo.

Este documento orienta você sobre o download do pacote da Biblioteca de Suporte e a adição de bibliotecas ao ambiente de desenvolvimento.

As bibliotecas de suporte agora estão disponíveis no repositório Maven do Google. Não é mais possível fazer o download das bibliotecas pelo SDK Manager, e essa funcionalidade vai ser removida em breve.

Escolher Bibliotecas de Suporte

Antes de adicionar uma Biblioteca de Suporte ao app, decida quais recursos você quer incluir e as versões mais antigas do Android que serão compatíveis. Para mais informações sobre os recursos fornecidos pelas diferentes bibliotecas, consulte Recursos da Biblioteca de Suporte.

Adicionar Biblioteca de Suporte

Para usar uma Biblioteca de Suporte, é preciso modificar as dependências do caminho de classe do projeto do aplicativo no ambiente de desenvolvimento. É necessário executar esse procedimento para cada Biblioteca de Suporte que você quer usar.

Para adicionar uma Biblioteca de Suporte ao projeto do aplicativo:

  1. Inclua o repositório Maven do Google no arquivo settings.gradle do seu projeto.
    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. Para cada módulo em que você quer usar uma Biblioteca de Suporte, adicione a biblioteca no bloco dependencies do arquivo build.gradle do módulo. Por exemplo, para adicionar a biblioteca v4 core-utils, adicione o seguinte:
    dependencies {
        ...
        implementation "com.android.support:support-core-utils:28.0.0"
    }
    

Cuidado:o uso de dependências dinâmicas (por exemplo, palette-v7:23.0.+) pode causar atualizações de versão inesperadas e incompatibilidades de regressão. Recomendamos que você especifique explicitamente uma versão da biblioteca (por exemplo, palette-v7:28.0.0).

Usar APIs de Biblioteca de Suporte

As classes da Biblioteca de Suporte que oferecem suporte a APIs de framework já existentes geralmente têm o mesmo nome que a classe do framework, mas estão localizadas nos pacotes de classe android.support ou têm um sufixo *Compat.

Cuidado:ao usar classes da Biblioteca de Suporte, confira se você importou a classe do pacote adequado. Por exemplo, ao aplicar a classe ActionBar:

  • android.support.v7.app.ActionBar ao usar a Biblioteca de Suporte.
  • android.app.ActionBar ao desenvolver apenas para o nível de API 11 ou mais recentes.

Observação:depois de incluir a Biblioteca de Suporte no projeto do aplicativo, é altamente recomendável reduzir, ofuscar e otimizar o app para lançamento. Além de proteger o código-fonte com a ofuscação, a redução remove classes não utilizadas de todas as bibliotecas incluídas no aplicativo, mantendo o tamanho do download do aplicativo o menor possível.

Mais orientações para o uso de alguns recursos da Biblioteca de Suporte são disponibilizadas nas aulas de treinamento, guias e exemplos para desenvolvedores Android. Para mais informações sobre as classes e os métodos individuais da Biblioteca de Suporte, consulte os pacotes android.support na Referência da API.

Mudanças na declaração do manifesto

Se estiver aumentando a compatibilidade do seu aplicativo com versões anteriores para uma versão anterior da API do Android usando a Biblioteca de Suporte, atualize o manifesto do app. Especificamente, você precisa atualizar o elemento android:minSdkVersion da tag <uses-sdk> no manifesto para o número de versão novo e anterior, conforme mostrado abaixo:

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

A configuração do manifesto diz ao Google Play que o aplicativo pode ser instalado em dispositivos com o Android 4.0 (API de nível 14) ou mais recente.

Se você estiver usando arquivos de build do Gradle, a configuração minSdkVersion do arquivo vai substituir as configurações do manifesto.

plugins {
  id 'com.android.application'
}

android {
    ...

    defaultConfig {
        minSdkVersion 16
        ...
    }
    ...
}

Nesse caso, a configuração do arquivo de build informa ao Google Play que a variante de build padrão do app pode ser instalada em dispositivos com Android 4.1 (API de nível 16) ou mais recente. Para saber mais sobre variantes de build, consulte Visão geral do sistema de build.

Observação:se você está incluindo várias Bibliotecas de Suporte, a versão mínima do SDK precisa ser a versão mais recente exigida por qualquer uma das bibliotecas especificadas. Por exemplo, se o app inclui as bibliotecas v14 Preference Support e v17 Leanback, a versão mínima do SDK precisa ser a 17 ou mais recente.