Criando aplicativos React Native 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 migrar.
O App Center pode criar aplicativos React Native usando o React Native versão 0.34 ou mais recente.
Para começar a criar seu primeiro aplicativo React Native para Android, você deve:
- Conecte-se à sua conta de serviço de repositório (GitHub, Bitbucket, VSTS, Azure DevOps).
- Selecione um repositório e uma ramificação em que seu aplicativo reside.
- Escolha o projeto
package.json
que você deseja construir. - Configure sua primeira compilação.
Observação
Para que o aplicativo seja executado em um dispositivo real, o build deve ser assinado por código com um certificado válido.
1. Vinculando seu repositório
Se você ainda não se conectou à sua conta de serviço de repositório, faça isso primeiro. Depois que sua conta estiver conectada, selecione o repositório onde seu projeto React Native está localizado. Você deve ter permissões de administrador e pull para configurar uma compilação para um repositório.
2. Selecionando uma filial
Depois de selecionar um repositório, selecione o branch que deseja criar. Por padrão, o App Center lista todos os branches ativos.
3. Configurando sua primeira compilação
Antes de sua primeira compilação, você deve configurar o projeto React Native.
3.1. Project
Selecione o package.json
arquivo . O App Center extrairá automaticamente informações de seu arquivo build.gradle associado (nível do aplicativo), incluindo dependências, versão das ferramentas de build, tipos de build e variações de produto.
Observação
Para obter o melhor desempenho, a análise está atualmente limitada a quatro níveis de diretório, incluindo a raiz do repositório.
3.2. Variante de compilação
As variantes de build disponíveis serão preenchidas a partir dos tipos de build e variações de produto especificados no arquivo build.gradle (nível do aplicativo) do projeto. Selecione qual variante de build deve ser criada.
Observação
O Build do App Center dá suporte à localização de variantes de build como a combinação de um Tipo de Build (depuração, versão ou definição personalizada) e uma Variação de Produto opcional. No momento, não há suporte para a detecção de combinações de vários tipos de produto.
3.3. Versão do Node.js
Selecione a versão Node.js a ser usada para a compilação Leia mais sobre como selecionar Node.js versão
3.4. Gatilhos de compilação
Por padrão, um novo build é disparado sempre que um desenvolvedor envia por push para um branch configurado. Isso é chamado de "Integração Contínua". Se preferir disparar uma nova compilação manualmente, você pode alterar essa configuração no painel de configuração.
3.5. Criar pacote de aplicativos Android (.aab)
O Android App Bundle é um formato de distribuição que pode ser carregado na Play Store. Ele é usado para gerar APKs otimizados para dispositivos específicos. Você pode descobrir mais sobre o Android App Bundle na documentação oficial do Android, que também ajuda a entender se deseja criar um pacote junto com seu.apk.
Ative a opção para Android App Bundle para produzir um .aab
além do .apk
. Se o arquivo (nível do build.gradle
aplicativo) contiver o android.bundle
bloco, essa opção será ativada automaticamente.
3.6. Incrementar o número da versão
Quando ativado, o código da versão no AndroidManifest.xml do seu aplicativo é incrementado automaticamente para cada compilação. A alteração ocorre durante a compilação real e não será confirmada no repositório.
3.7. Inicie sua compilação bem-sucedida em um dispositivo real
Use o arquivo APK recém-produzido para testar se seu aplicativo é iniciado em um dispositivo real. Os testes de inicialização adicionarão aproximadamente mais 10 minutos ao tempo total de compilação. Leia mais sobre como configurar testes de inicialização.
3.8. Assinatura de código
Uma compilação bem-sucedida produzirá um .apk
arquivo e um arquivo adicional .aab
, se ativado. Para liberar a compilação para a Play Store, ela deve ser assinada com um certificado válido armazenado em um repositório de chaves. Para assinar as compilações produzidas a partir de uma ramificação, ative a assinatura de código no painel de configuração, carregue seu armazenamento de chaves em seu repositório e forneça os valores relevantes no painel de configuração. Você pode ler mais sobre a assinatura de código do Android App Center, documentação de assinatura de código do Android. O .aab
será assinado usando as mesmas credenciais que o .apk
.
3.9. Distribuir a compilação
Você pode configurar cada build bem-sucedido de uma ramificação para ser distribuído para um grupo de distribuição criado anteriormente ou um destino de armazenamento. Você pode adicionar um novo grupo de distribuição ou configurar uma conexão de armazenamento de dentro do serviço Distribuir. Sempre há 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 Android App Bundle (.aab
) é preferível e será distribuído se ativado. Para grupos de distribuição do App Center e destinos de repositório do Intune, um regular .apk
será usado mesmo que um .aab
também seja gerado.
4. Crie resultados
Depois que uma compilação for disparada, a compilação estará em um dos seguintes estados:
- queued - a compilação está em uma fila aguardando a liberação de recursos
- construção - a compilação está executando as tarefas predefinidas
- bem-sucedido - o build foi concluído e bem-sucedido
- Falha - o build foi concluído, mas falhou; você pode solucionar o que deu errado baixando e inspecionando o log de build
- cancelado - a compilação foi cancelada por uma ação do usuário ou atingiu o tempo limite
4.1. Logs de build
Para uma compilação concluída (bem-sucedida ou com falha), baixe os logs para entender mais sobre como foi a compilação. 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 específicos da etapa de compilação (localizados no build/
diretório do arquivo) são úteis para solucionar problemas e entender em qual etapa e por que a compilação falhou.
4.2. O aplicativo (.apk)
O .apk
arquivo é um arquivo empacotado do aplicativo Android que armazena o aplicativo Android. Se a compilação tiver sido assinada corretamente, o aplicativo 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.
5. Versões e requisitos suportados
A versão mínima compatível com a criação de apps Android é a 5.0 (API de nível 21). Os apps Android podem ter um nível mínimo de API mais baixo necessário para serem executados, mas precisam ter como destino pelo menos o nível 21 da API.
6. Dicas de construção
6.1. Yarn
O gerenciador de pacotes Yarn é um substituto mais rápido e determinístico para npm
o . Se um yarn.lock
arquivo estiver presente em seu repositório ao lado de package.json
, o App Center usará o Yarn, fazendo yarn install
no início do build. Caso contrário, ele servirá npm install
.
6.2. Scripts de compilação personalizados
Há várias opções para executar scripts antes que os comandos de build padrão do App Center sejam executados.
Crie um script de pós-instalação no arquivo do
package.json
seu projeto. Esse script será executado automaticamente após a instalação das dependências."scripts": { ... "postinstall" : "npx jetify" // other examples: "node ./postinstall.js" or "./postinstall.sh" },
Escreva um script de shell usando a funcionalidade de scripts de build personalizados do App Center.
#!/usr/bin/env bash # Example: Authenticate with private NPM registry echo "//registry.npmjs.org/:_authToken=$NPM_AUTH_TOKEN" > ~/.npmrc # Example: Add your signing key file (from base64 encoded environment variable) base64 -d <<< "$ANDROID_JSON_KEY_FILE" > android/keystores/json_key_file.json
6.3. Como criar vários APKs
Para o React Native no Android, a geração de APK universal está desabilitada por padrão. Se a configuração do app estiver configurada para criar vários APKs, por exemplo, diferentes por arquitetura de CPU ou configuração de tela, você precisará garantir que um APK universal também seja criado. O sistema de build do App Center funciona com um arquivo APK principal e ignorará todos os APKs específicos para uma determinada CPU/ABI ou densidade de tela.
Para saber mais sobre as divisões de APK e como criar um APK universal, leia o guia do desenvolvedor Android correspondente. Consequentemente, certifique-se de que universalApk
esteja definido como true
para sua configuração de build do React Native.