Imagem de Capa

Como Compilar o Aplicativo React Native

Passo a Passo do Processo de Compilação de um Aplicativo React Native.

By João Paulo Siqueira At Thu Dec 30 2021 22:20:57 GMT+0000 (Coordinated Universal Time)

#reactnative

Introdução

Quando o comando npx react-native run-android é executado, uma versão debug do APK é gerada no diretório android\app\build\outputs\apk\debug, mas essa versão debug não serve para instalação.

Para você poder gerar uma versão instalável, você precisa gerar uma versão Release e para fazer isso, você precisa assinar digitalmente o seu APK com um Keystore.

A versão Release assinada digitalmente é um requisito para publicar o seu aplicativo na Play Store.

Gerando o Keystore

Abra o Prompt de Comando e navegue até o diretório do seu aplicativo e execute o seguinte comando:

"C:\Program Files\Java\jdkx.x.x_xxx\bin\keytool.exe" -genkeypair -v -keystore release.keystore -alias release -keyalg RSA -keysize 2048 -validity 10000 -deststoretype PKCS12

Responda as perguntas:

Informe a senha da área de armazenamento de chaves:
Informe novamente a nova senha:
Qual é o seu nome e o seu sobrenome?
Qual é o nome da sua unidade organizacional?
Qual é o nome da sua empresa?
Qual é o nome da sua Cidade ou Localidade?
Qual é o nome do seu Estado ou Município?
Quais são as duas letras do código do país desta unidade?

Em unidade organizacional, você pode colocar o nome do departamento que você trabalha, ou você pode deixar em branco.

Em empresa, você pode preencher com o nome da sua empresa ou deixar em branco.

Não utilize caracteres especiais (Digite Joao ao invés de João).

A Senhas de chave e de armazenamento diferentes não suportadas para KeyStores PKCS12, caso você precise de uma senha de chave diferente, remova o argumento -deststoretype PKCS12 do comando para gerar um KeyStore no formato JKS.

Após preencher os dados, o comando vai pedir para confirmar os dados, digite sim:

CN=Seu Nome, OU=Unknown, O=Nome da Empresa, L=Nome da Cidade, ST=Nome do Estado, C=BR Está correto?
  [não]:  sim

Após isso, copie o arquivo release.keystore para dentro do diretório:

/android/app

Configurando as Variáveis do Gradle

Dentro do diretório android, tem um arquivo chamado gradle.properties, abra o arquivo copie as seguintes linhas no final do arquivo:

MYAPP_UPLOAD_STORE_FILE=release.keystore
MYAPP_UPLOAD_KEY_ALIAS=release
MYAPP_UPLOAD_STORE_PASSWORD=******
MYAPP_UPLOAD_KEY_PASSWORD=******

Substitua os ****** com seu a senha.

Adicionando a Configuração de Assinatura no Gradle

Localize o arquivo build.gradle dentro do diretório /android/app/ e adicione ou altere as seguintes linhas:

android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
                storeFile file(MYAPP_UPLOAD_STORE_FILE)
                storePassword MYAPP_UPLOAD_STORE_PASSWORD
                keyAlias MYAPP_UPLOAD_KEY_ALIAS
                keyPassword MYAPP_UPLOAD_KEY_PASSWORD
            }
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}

Gerando o APK

Para gerar o APK no Windows 10, abra o Prompt de Comando, navegue até o diretório android e execute o seguinte comando:

gradlew assembleRelease

O comando no Linux é um pouco diferente:

./gradlew assembleRelease

O arquivo estará localizado no diretório:

\android\app\build\outputs\apk\release

Gerando o AAB

Para gerar o AAB no Windows 10, abra o Prompt de Comando, navegue até o diretório android e execute o seguinte comando:

gradlew bundleRelease

O comando no Linux é um pouco diferente:

./gradlew bundleRelease

O arquivo estará localizado no diretório:

\android\app\build\outputs\bundle\release

Instalando a Versão Release no Emulador

Também é possível instalar a versão Release no emulador do Android.

Mas lembre de desinstalar a versão Debug antes instalar a versão Release, pois são versões diferentes e fazer isso ocorrerá um erro de instalação.

Para instalar a versão Release, execute o seguinte comando:

npx react-native run-android --variant=release

Lembre-se também de desinstalar a versão Release antes instalar a versão Debug.

Conclusão

Com o APK em mãos, você está pronto para instalar em seu celular, mas lembre de habilitar o modo desenvolvedor.

Para publicar o Aplicativo na Play Store, utilize o arquivo AAB ao invés do arquivo APK, os Termos de Serviço foram atualizados e os arquivos APK não são mais suportados.