O namespace androidx compreende as bibliotecas do Android Jetpack.
Assim como a Biblioteca de Suporte, as bibliotecas no namespace androidx são enviadas separadamente
da plataforma Android e oferecem compatibilidade com versões anteriores do Android
lançadas.
O AndroidX é uma grande melhoria para a Biblioteca de Suporte original do Android, que não é mais mantida.
Os pacotes do androidx substituem totalmente a Biblioteca de Suporte, fornecendo paridade de recursos e novas bibliotecas.
Além disso, o AndroidX inclui os seguintes recursos:
Todos os pacotes do AndroidX estão disponíveis em um namespace consistente, começando com a string
androidx. Os pacotes da Biblioteca de Suporte foram mapeados nos pacotesandroidx.*correspondentes. Para mapear totalmente todas as classes e artefatos de compilação antigos para os novos, consulte a página de Refatoração de pacotes.Ao contrário da Biblioteca de Suporte, os pacotes do
androidxsão mantidos e atualizados separadamente. Os pacotes doandroidxusam o controle de versões semântico restrito a partir da versão 1.0.0. Você pode atualizar as bibliotecas do AndroidX no seu projeto de forma independente.A versão 28.0.0 é a última versão da Biblioteca de Suporte. Não haverá mais versões da biblioteca
android.support. Todo o desenvolvimento de novos recursos vai estar no namespaceandroidx.
Como usar bibliotecas androidx no seu projeto
O AGP atual oferece suporte ao uso das bibliotecas androidx por padrão. Consulte Como migrar
para o AndroidX para saber como migrar um projeto
existente.
Para projetos que não foram migrados ou têm dependências legadas que não foram, o
AGP fornece as seguintes flags que podem ser definidas no arquivo
gradle.properties do projeto.
android.useAndroidX: verdadeiro por padrão no plug-in do Android para Gradle 9.0.0 e versões mais recentes, falso em versões anteriores à 9.0.0. Quando essa flag é definida comotrue, o plug-in do Android usa a biblioteca AndroidX adequada em vez de uma Biblioteca de Suporte. A capacidade de definir essa flag comofalseserá removida no AGP 10.android.enableJetifier: quando essa flag é definida comotrue, o plug-in do Android migra automaticamente as bibliotecas de terceiros existentes para usar as dependências do AndroidX reescrevendo os binários delas. A flag éfalsepor padrão se não for especificada e está programada para ser removida no AGP 10, já que as bibliotecas publicadas geralmente concluíram a migração.
Referência da API
Todos os pacotes e classes no namespace androidx podem ser encontrados na
seção de referência do AndroidX.
Outros recursos
Saiba mais sobre os componentes na página inicial do Jetpack. Para mais
informações sobre a refatoração de pacotes da Biblioteca de Suporte para
androidx, consulte a postagem
do blog
(em inglês) sobre esse assunto.