Criando aplicativos Xamarin para Android
Importante
O Visual Studio App Center está programado para ser desativado em 31 de março de 2025. Embora você possa continuar a usar o Visual Studio App Center até que ele seja totalmente desativado, há várias alternativas recomendadas para as quais você pode considerar a migração.
Para começar a criar seu primeiro aplicativo Xamarin Android, você deve:
- Conecte-se à sua conta de serviço do repositório (GitHub, Bitbucket, VSTS, Azure DevOps).
- Selecione um repositório e um branch onde seu aplicativo reside.
- Escolha o projeto do Android que você deseja criar.
- Configure seu primeiro build.
Observação
Para que o aplicativo seja executado em um dispositivo real, você deve assinar o build com um KeyStore válido.
1. Vinculando seu repositório
Se você ainda não se conectou anteriormente à sua conta de serviço do repositório, faça isso primeiro. Depois que sua conta estiver conectada, selecione o repositório em que o projeto do Xamarin está localizado. Você deve ter permissões de administrador e pull para configurar um build para um repositório.
2. Selecionando uma ramificação
Depois de selecionar um repositório, selecione o branch que você deseja criar. Por padrão, o App Center lista todos os branches ativos.
3. Configurando seu build
O projeto Xamarin deve ser configurado antes do primeiro build.
3.1. Gatilhos de build
Por padrão, o serviço de build usa a Integração Contínua, portanto, um novo build é disparado sempre que um desenvolvedor envia por push para um branch configurado. Se você preferir disparar novos builds manualmente, poderá alterar essa configuração no painel de configuração.
3.2. Projeto e configuração
Os projetos disponíveis em seu repositório serão preenchidos se estiverem localizados dentro do intervalo de análise. Selecione o projeto correto para o build do Android e selecione a configuração apropriada.
Observação
Para obter o melhor desempenho, a análise está limitada atualmente a quatro níveis de diretório, incluindo a raiz do repositório.
3.3. Versão mono
O App Center permite o uso de diferentes ambientes Mono agrupados com o respectivo SDK do Xamarin.Android para seus builds. Dessa forma, mantemos a compatibilidade com versões anteriores e, ao mesmo tempo, oferecemos suporte aos recursos mais recentes. A versão mono padrão para uma nova configuração de branch é a mais recente estável. Você pode optar por usar um dos ambientes Mono anteriores para criar versões mais antigas de estruturas ou bibliotecas.
Ao selecionar uma versão Mono na configuração de build, a versão agrupada do SDK do Xamarin.Android foi exibida ao lado dela. Para obter mais informações sobre as atualizações de versão do SDK do Xamarin, leia o blog de versão do Xamarin.
3.3.1. Versão do .NET Core
A versão adequada do .NET Core será selecionada automaticamente com base na versão Mono usada para build e não poderá ser substituída. Você pode exibir o mapeamento do Mono para o .NET Core usado por nossos serviços na tabela abaixo:
Mono | .NET Core |
---|---|
<= 5,18 | 2.2.105 |
6,0 | 2.2.300 |
6.4 | 3.0.100 |
6.6 | 3.1.100 |
6,8 | 3.1.200 |
6.10 | 3.1.300 |
6.12 | 3.1.401 |
3.4. Criar Pacote de Aplicativos Android (.aab)
O Pacote de Aplicativos Android é um formato de distribuição usado para gerar APKs otimizadas para dispositivos específicos. Ele pode ser carregado na Play Store. Você pode saber mais sobre o Pacote de Aplicativos android na documentação oficial do Android e as notas sobre a versão do Xamarin.Android 9.4, que também podem ajudá-lo a decidir se deseja criar um pacote junto com seu regular .apk.
Alterne a opção do Pacote de Aplicativos android para produzir um .aab
e um .apk
. Se o .csproj
arquivo contiver aab
na AndroidPackageFormat
propriedade , essa opção será ativada automaticamente. A criação de um .aab
é compatível com o Xamarin.Android 9.4 e superior.
3.5. Incrementar número de versão
Quando habilitado, o código de versão no AndroidManifest.xml do aplicativo é incrementado automaticamente para cada build. A alteração ocorre antes do build e não será confirmada no repositório.
3.6. Assinatura de código
Um build bem-sucedido produzirá um .apk
arquivo e um arquivo adicional .aab
, se habilitado. Para liberar o build para a Play Store, ele deve ser assinado com um Repositório de Chaves e um Alias válidos. Para assinar os builds produzidos de um branch, habilite a assinatura de código no painel de configuração, carregue o Repositório de Chaves e forneça os valores necessários no painel de configuração. Você pode ler instruções de assinatura de código mais detalhadas. O .aab
será assinado usando as mesmas credenciais que o .apk
.
3.7. Iniciar sua compilação bem-sucedida em um dispositivo real
Use o arquivo recém-produzido .apk
para testar se o aplicativo começa em um dispositivo real. Isso adiciona aproximadamente mais 10 minutos ao tempo total de build. Há mais informações em nosso guia de integração de teste.
3.8. Restauração do NuGet
Se o NuGet.config
arquivo for check-in no repositório e estiver sentado ao lado do .sln
arquivo ou no nível raiz do repositório, o App Center restaurará seus feeds NuGet privados quando eles forem adicionados, conforme mostrado no exemplo abaixo. As credenciais podem ser adicionadas com segurança usando variáveis de ambiente:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget" value="https://api.nuget.org/v3/index.json" />
<add key="MyGet" value="https://www.myget.org/F/MyUsername/api/v2/index.json" />
<add key="MyAuthNuget" value="https://nuget.example.com/v2/index.json" />
</packageSources>
<activePackageSource>
<add key="All" value="(Aggregate source)" />
</activePackageSource>
<packageSourceCredentials>
<MyAuthNuget>
<add key="Username" value="$USER_VARIABLE" />
<add key="ClearTextPassword" value="$PASSWORD_VARIABLE" />
</MyAuthNuget>
</packageSourceCredentials>
</configuration>
Se você tiver configurações complexas e precisar de mais informações, consulte Configurando o comportamento do NuGet.
3.9. Distribuir o build
Você pode configurar cada build bem-sucedido de um branch a ser distribuído para um grupo de distribuição criado anteriormente ou um destino de repositório. Você pode adicionar um novo grupo de distribuição ou configurar uma conexão de repositório de dentro do serviço Distribuir. Há sempre um grupo de distribuição padrão chamado "Colaboradores" que inclui todos os usuários que têm acesso ao aplicativo.
Observação
Se estiver distribuindo para a Google Play Store, um Pacote de Aplicativos Android (.aab
) será preferencial e será distribuído se habilitado. Para grupos de distribuição do App Center e Intune destinos da loja, um regular .apk
será usado mesmo se um .aab
também for gerado.
4. Resultados de build
Depois que um build for disparado, o build estará em um dos seguintes estados:
- enfileirado – o build está em uma fila aguardando a liberação de recursos.
- building - o build está em execução.
- bem-sucedido – o build foi concluído com êxito.
- falha – o build parou com falhas. Você pode solucionar o que deu errado baixando e inspecionando o log de build.
- cancelado – o build foi cancelado por uma ação do usuário ou atingiu o tempo limite.
4.1. Logs de build
Para obter um build concluído (com êxito ou falha), baixe os logs para entender mais sobre como o build foi. O App Center fornece um arquivo morto com os seguintes arquivos:
|-- 1_build.txt (this is the general build log)
|-- build (this folder contains a separate log file for each build step)
|-- <build-step-1>
|-- <build-step-2>
|--
|-- <build-step-n> (e.g. n_Post Job Cleanup.txt)
Os logs da etapa de build (localizados no build/
diretório do arquivo morto) são úteis para entender em qual etapa e por que o build falhou.
4.2. O aplicativo (.apk)
O .apk
arquivo é um arquivo empacotado do aplicativo Android que armazena o aplicativo Android. Se o build tiver sido assinado corretamente, o .apk
arquivo poderá ser instalado em um dispositivo real e implantado na Play Store. Se o build não tiver sido assinado, o aplicativo poderá ser executado em um emulador ou ser usado para outras finalidades.
Versões e requisitos com suporte
O App Center dá suporte a projetos PCL (Portable Class Library) e .NET Standard . Consulte Máquinas de Build de Nuvem para versões do .NET Standard.
O App Center não dá suporte a Componentes do Repositório de Componentes do Xamarin e aconselhamos o uso de pacotes NuGet sempre que eles estiverem disponíveis. Se você estiver usando um Componente que não pode ser substituído, entre em contato conosco. Consulte ajuda e comentários.