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. A 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 (da versão 27 e anteriores, empacotados como android.support.*) permanecerão disponíveis no Maven do Google. 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 a AndroidX.

A forma como você configura as Bibliotecas de Suporte do Android no seu projeto de desenvolvimento depende dos recursos que quer usar e a qual variedade de versões da plataforma Android quer oferecer compatibilidade com o app.

Este documento auxilia você a fazer o download do pacote da Biblioteca de Suporte e a adicionar bibliotecas ao seu ambiente de desenvolvimento.

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

Escolher Bibliotecas de Suporte

Antes de adicionar uma Biblioteca de Suporte ao seu app, decida quais recursos você quer incluir e as versões mais antigas do Android às quais quer oferecer compatibilidade. 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, é necessário modificar as dependências de classpath do projeto do app no ambiente de desenvolvimento. Você precisa realizar esse procedimento para cada Biblioteca de Suporte que quer usar.

Para adicionar uma Biblioteca de Suporte ao projeto do aplicativo:

  1. Inclua o repositório Maven do Google no arquivo build.gradle do projeto.
        allprojects {
            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 de 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 compatíveis com as Framework APIs existentes geralmente têm o mesmo nome que a classe framework, mas estão localizadas nos pacotes de classe android.support ou têm o sufixo *Compat.

Atenção: 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 usadas de qualquer biblioteca incluída, o que mantém 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 amostras para desenvolvedores Android. Para ver mais informações sobre classes e métodos específicos da Biblioteca de Suporte, consulte os pacotes android.support na referência da API.

Mudanças na declaração do manifesto

Caso esteja aumentando a retrocompatibilidade do seu aplicativo existente para uma versão mais antiga da Android API usando a Biblioteca de Suporte, lembre-se de atualizar o manifesto do seu aplicativo. Especificamente, você precisa atualizar o elemento android:minSdkVersion da tag <uses-sdk> no manifesto para o número das versões mais e menos recentes, como demonstrado 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 nível 14) e versões mais recentes.

Caso esteja usando arquivos de compilação Gradle, a configuração minSdkVersion no arquivo de build substitui as configurações do manifesto.

    apply plugin: 'com.android.application'

    android {
        ...

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

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

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 17 ou mais recente.