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 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 aplicativo.

Este documento orienta você a fazer o download do pacote da Biblioteca de Suporte e 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 aplicativo, decida quais recursos você quer incluir e as versões mais antigas do Android que 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 aplicativo no ambiente de desenvolvimento. Você precisa realizar este 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 settings.gradle do 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 core-utils v4, 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 APIs do framework 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 app, recomendamos 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 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

Se você estiver aumentando a compatibilidade com versões anteriores do seu aplicativo para uma versão anterior da API do Android com a Biblioteca de Suporte, atualize o manifesto do 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 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 (nível da API 14) e versões mais recentes.

Se você estiver usando arquivos de build do Gradle, a configuração minSdkVersion no arquivo de build 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 aplicativo pode ser instalada em dispositivos com o Android 4.1 (nível da API 16) e versões mais recentes. Para mais informações 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 a biblioteca Preference Support v14 e a biblioteca Leanback v17, a versão mínima do SDK precisa ser 17 ou mais recente.