Vygenerujte apk pro PURE React Native

Při vytváření aplikací s Expo zabere většinu tvrdé práce za vás. Chcete-li tedy vytvořit apk pro vaši aplikaci, je to pouze příkaz na jednom řádku

expo build:android -t apk

Ale pro PURE React Native App je to o něco zábavnější než jen to. Jak? Pojďme to společně zjistit!!

(podívejte se na tento odkaz, je to NEJLEPŠÍ)
https://instamobile.io/android-development/generate-react-native-release-build-android/

Krok 1:Vygenerování souboru .keystore

Spuštěním následujícího příkazu vytvořte .keystore" soubor pro vaši stavbu

keytool -genkey -v -keystore your_key_name.keystore -alias your_key_alias -keyalg RSA -keysize 2048 -validity 10000

Obvykle dávám přednost tomu, aby byl název mého klíče stejný jako název mé aplikace, ale můžete si jej pojmenovat jakkoli chcete :)

Po spuštění výše uvedeného příkazu budete vyzváni k mnoha otázkám z vašeho milovaného terminálu. Pečlivě odpovězte na každé z nich a ZAPAMATUJTE si heslo, budete ho potřebovat později (zejména to poslední, ale všechny si ponecháme stejné, takže je budeme považovat za jedno heslo)

V důsledku předchozího příkazu vygeneruje soubor úložiště klíčů v adresáři vašeho projektu s názvem "název_vašeho_klíče.keystore" platí 10 000 dní. A co je nejdůležitější, zálohujte tento soubor úložiště klíčů a jeho přihlašovací údaje (heslo uložení, alias a heslo pro alias), které bude vyžadováno později.

Krok 2:Přidání souboru .keystore do projektu

Nejprve musíte zkopírovat soubor název_vašeho_klíče.keystore a vložte jej pod „android/app“ adresář ve vaší složce projektu React Native.

Z terminálu můžete použít následující příkaz

mv my-release-key.keystore /android/app

Nyní otevřete „android/app/build.gradle“ a přidejte následující konfiguraci úložiště klíčů.

android {
  ....
    signingConfigs {
      release {
        storeFile file('your_key_name.keystore')
        storePassword System.console().readLine("\nKeystore password:")
        keyAlias System.console().readLine("\nAlias: ")
        keyPassword System.console().readLine("\Alias password: ")
      }
    }
    buildTypes {
      release {
        ....
        signingConfig signingConfigs.release
      }
    }
}

Díky tomu budete při spuštění příkazu apk build vyzváni k zadání hesel. Ujistěte se, že "signingConfigs" blok se objeví před "buildTypes" blokovat, aby se předešlo zbytečným chybám. Než budete pokračovat dále, ujistěte se, že máte složku aktiv pod „android/app/src/main/assets“ . Pokud tam není, vytvořte jej. Nyní jsme připraveni vygenerovat apk

Krok 3:Vygenerujte apk

Nejprve spusťte tento následující příkaz a sestavte balíček

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

Poznámka :Pokud máte jiný název vstupního souboru, například "index.android.js" , změňte jej v příkazu.

Nyní přejděte do „android“ složku s tímto příkazem

cd android

Poté spusťte následující příkaz a vygenerujte soubor apk
(pro Windows)

gradlew assembleRelease

(pro Linux nebo Mac)

./gradlew assembleRelease

NEBO spusťte tento jediný příkaz z root

npx react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/build/intermediates/res/merged/release/ && rm -rf android/app/src/main/res/drawable-* && rm -rf android/app/src/main/res/raw/* && cd android && ./gradlew assembleRelease && cd ..

Výsledkem je proces vytvoření souboru APK . Vygenerovaný soubor APK najdete na adrese "android/app/build/outputs/apk/app-release.apk" . Toto je skutečná aplikace, kterou můžete odeslat do telefonu nebo nahrát do obchodu Google Play. Gratulujeme, právě jste vygenerovali React Native Release Build APK pro Android.

Co bude DÁL?

1. Projekt s Pure React Native

2. Více o vývoji aplikací

3. Jak vygenerovat apk s čistým React Native

4. Jak nasadit do obchodu Play

5. Šílené věci s JavaScriptem/TypeScriptem

6. Psaní automatických testů pro jakýkoli server

7. Jak vytvořit Android APP bez XP s Expo

(včetně generování apk)

Máte nějaké pochybnosti?

Napište komentář nebo mě neváhejte kontaktovat @SilveLEAF na Twitteru nebo Linkedinu

Chceš o mně vědět víc? Pojď sem!
SilvenLEAF.github.io