2015-09-17 16 views
29

Ho visto una nuova versione di react native per Android e ho provato alcuni esempi. Funziona solo con la modalità di debug USB e "adb reverse tcp: 8081 tcp: 8081". Come posso creare app Android per "produzione" incluse tutte le dipendenze e senza reagire alle connessioni web-server. Grazie.Come creare un'applicazione Android nativa reattiva per la produzione?

+0

ha le soluzioni di lavoro per voi? Quel processo produce un apk non firmato per me, qualsiasi suggerimento? – kamikazeOvrld

risposta

37

di costruire una versione di app Android:

$ cd your-app-folder 
$ cd android && ./gradlew assembleRelease 

È necessario configurare chiavi di firma per il Play Store, la documentazione completa qui: http://facebook.github.io/react-native/docs/signed-apk-android.html

+0

Grazie. In attesa di strumenti migliori per farlo. Correggimi se sbaglio, per build release .apk non ci sono ancora strumenti? – sanny

+1

dalla directory root-app prova questo 'cd android && ./gradlew assembleRelease'. Come per le nuove documentazioni, https://facebook.github.io/react-native/docs/signed-apk-android.html –

+0

@Martin grazie per questo, ma mi sembra di avere ancora problemi con questo processo, che genera un non firmato apk per me, qualche idea su quello che sto facendo male? – kamikazeOvrld

5

Ho messo insieme alcuni passi quello ha funzionato per me. Spero che vorrebbe risparmiare tempo.

Per bundling il pacchetto di lavorare in locali è necessario fare

$ curl "http://localhost:8081/index.android.bundle?platform=android" -o "android/app/src/main/assets/index.android.bundle" 

Poi per la compilazione apk

$ ./gradlew assembleRelease 

ho aggiunto le istruzioni dettagliate alla: https://github.com/shyjal/reactnative-android-production

7

Quanto a me, Aggiungo il mio package.json a "script":

"release": "cd android && ./gradlew assembleRelease" 

E poi nel terminale utilizzare:

npm run-script release 

O con filato:

yarn release 
+1

Terminato l'aggiunta degli script al mio pacchetto.json, grazie ! –

11

Si dovrà creare una chiave per firmare l'apk. Utilizzare seguito per creare la chiave:

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

utilizzare una password quando richiesto

Una volta che la chiave viene generata, utilizzarlo per generare la costruzione installabile:

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/ 

Generare il build usando Gradle

cd android && ./gradlew assembleRelease 

Carica l'APK sul telefono. Il flag -r sostituirà l'applicazione esistente (se esiste)

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

Una descrizione più dettagliata è qui menzionato: https://facebook.github.io/react-native/docs/signed-apk-android.html

Problemi correlati