AndroidX com Xamarin

Como começar a desenvolver aplicativos com AndroidX usando o Xamarin.Android.

O AndroidX é uma grande melhoria na Biblioteca de Suporte do Android original, que não é mais mantida. Os pacotes AndroidX substituem totalmente a Biblioteca de Suporte do Android fornecendo paridade de recursos e novas bibliotecas que você pode usar em seus aplicativos Android.

O AndroidX inclui os seguintes recursos:

  • Todos os pacotes dentro do AndroidX agora têm um namespace consistente começando com androidx. Isso significa que todos os pacotes da Biblioteca de Suporte do Android são mapeados para um pacote correspondente androidx.* .
  • androidx os pacotes são mantidos e atualizados separadamente. Isso significa que você pode atualizar bibliotecas AndroidX independentemente umas das outras.
  • A partir da v28 da Biblioteca de Suporte do Android, não haverá mais versões. Em vez disso, todo o desenvolvimento será incluído androidx .

Logotipo do AndroidX

Requisitos

A lista a seguir é necessária para usar recursos do AndroidX em aplicativos baseados em Xamarin:

  • Visual Studio – Na atualização do Windows para o Visual Studio 2019 versão 16.4 ou posterior. No macOS, atualize para o Visual Studio 2019 para Mac versão 8.4 ou posterior.
  • Xamarin.Android – O Xamarin.Android 10.0 ou posterior deve ser instalado com o Visual Studio (o Xamarin.Android é instalado automaticamente como parte da carga de trabalho desenvolvimento móvel com .NET no Windows e instalado como parte do instalador do Visual Studio para Mac)
  • Java Developer Kit – O desenvolvimento do Xamarin.Android 10.0 requer o JDK 8. A distribuição do OpenJDK pela Microsoft é instalada automaticamente como parte do Visual Studio.
  • SDK do Android – API do SDK do Android 28 ou superior deve ser instalada por meio do Gerenciador de SDK do Android.

Introdução

Você pode começar a usar o AndroidX incluindo qualquer pacote NuGet androidx dentro de seu projeto Android. Saiba mais sobre como instalar e usar um pacote no Visual Studio ou Visual Studio para Mac

Alterações de comportamento

Como o AndroidX é uma reformulação da Biblioteca de Suporte do Android, ele inclui etapas de migração que afetarão os aplicativos Android criados com a Biblioteca de Suporte do Android.

Alteração do nome do pacote

Os nomes dos pacotes foram alterados entre os pacotes antigos e novos. Abaixo, você pode ver um exemplo dessas alterações:

Antigo Novo
android.support.** androidx. @
android.design.** com.google.android.material. @
android.support.test.** androidx.test. @
android.arch.** androidx. @
android.arch.persistence.room.** androidx.room. @
android.arch.persistence.** androidx.sqlite. @

Para obter mais detalhes sobre a nomenclatura do pacote, consulte a documentação a seguir.

Ferramentas de Migração

Há três etapas de migração que você desejará conhecer para seu aplicativo.

  1. Se seu aplicativo incluir namespaces da Biblioteca de Suporte do Android e você quiser migrá-los para namespaces AndroidX, você poderá usar nossas ferramentas Migrar para iDE do AndroidX para cuidar da maioria dos cenários de namespace.

Habilite o Migrador do AndroidX por meio das Opções > de Ferramentas > Configurações do Xamarin > Android no Visual Studio 2019 (você pode ignorar esta etapa em Visual Studio para Mac).

Habilitar o AndroidX Migrator

Clique com o botão direito do mouse em seu projeto e migre para o AndroidX.

Migrar para AndroidX

Observação

Você precisará fazer algumas alterações manuais de namespace para cenários que a ferramenta não abrange. Embora mapeiemos o pacote correto para você, é recomendável que você dê uma olhada nos mapeamentos oficiais de artefatos e mapeamentos de classe para ajudar na migração do projeto.

  1. Se o aplicativo incluir dependências que não foram migradas para o namespace do AndroidX, você precisará usar a Biblioteca de Suporte do Android para o pacote de Migração do AndroidX.
  2. Se o aplicativo não incluir nenhuma dependência que exija a migração de namespace do AndroidX, você poderá usar as bibliotecas AndroidX no NuGet hoje mesmo.

Solução de problemas

  • Determinados pacotes de arquitetura no AndroidX entrarão em conflito com as versões da Biblioteca de Suporte. Para corrigir isso, você deve usar a versão do AndroidX desses pacotes e remover a versão da Biblioteca de Suporte. Por exemplo, se você estiver fazendo referência Xamarin.Android.Arch.Work.Runtime em seu projeto, ele entrará em conflito com os tipos do pacote recém-adicionado AndroidX.Work .

Resumo

Este artigo introduziu o AndroidX e explicou como instalar e configurar as ferramentas e pacotes mais recentes para o desenvolvimento do Xamarin.Android com AndroidX. Ele forneceu uma visão geral do que é o AndroidX. Ele incluiu links para a documentação da API e tópicos do Desenvolvedor do Android para ajudá-lo a começar a criar aplicativos usando o AndroidX. Ele também destacou as alterações de comportamento mais importantes do AndroidX e os tópicos de solução de problemas que poderiam afetar os aplicativos existentes.