Como posso gerar um apk que rode sem server no React Native?

Eu construí meu aplicativo, posso executá-lo no meu emulador local (e também no meu dispositivo Android na mesma rede alterando o servidor de debug). No entanto, quero construir um APK que possa enviar para alguém sem acesso ao servidor de desenvolvimento e quero que eles possam testar o aplicativo, por isso queria gerar um APK que rode sem server.

Vejo que há uma seção usando offline bundle no iOS da documentação. Mas não consegui descobrir como fazer o mesmo para o Android. Isso é possível? Se sim, como?

Você terá que criar uma chave para assinar o apk. Use abaixo para criar sua chave e use uma senha quando solicitado:

keytool -genkey -v -keystore my-app-key.keystore -alias my-app-alias -keyalg RSA -keysize 2048 -validity 10000

Depois que a chave for gerada, use-a para gerar a compilação instalável:

 react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/

Gerar a compilação usando gradle

cd android && ./gradlew assembleRelease

Faça o upload do APK para o seu telefone. O sinalizador -r substituirá o aplicativo existente (se existir):

adb install -r ./app/build/outputs/apk/app-release-unsigned.apk

Se aparecer o erro ENOENT: no such file or directory, open 'android/app/src/main/assets/index.android.bundle' , rode:

mkdir android/app/src/main/assets