2017-09-19 2 views
0

J'essaie de suivre le poste this pour avoir configuré un environnement intermédiaire pour mon application native. Le message demande d'ajouter une nouvelle configuration appelant le Staging au projet Xcode et l'utilise pour créer le projet. J'ai ajouté la config Staging qui est une copie de la configuration Release mais je ne suis pas en mesure de construire l'application en utilisant cette configuration. Je reçois des erreurs suivantes:Créer un environnement intermédiaire pour réagir à l'application native

React/RCTBridgeModule.h file not found 

Je ne comprends pas cette erreur dans Debug et Release configuration. J'ai lu que reac-native assigne une signification spéciale aux configurations nomme Debug et Release mais je ne suis pas sûr de savoir comment contourner ce problème. J'ai également regardé react-native-config pour configurer l'environnement de mise en scène, mais la configuration initiale m'a semblé un peu compliquée et quelque chose que je n'ai pas compris tout de suite. Considérant que les étapes énumérées dans l'autre poste sont assez simples à comprendre qui sont fondamentalement de créer une configuration séparée et utiliser la configuration utilisée pour exécuter l'application pour comprendre l'environnement dans lequel l'application s'exécute.

Si vous avez été en mesure de créer un environnement intermédiaire pour votre application réag-native en utilisant cette approche ou une autre approche, s'il vous plaît partager.

Merci!

Répondre

2

Je pense que vous devriez regarder ce poste https://github.com/Microsoft/react-native-code-push#ios

Et ma façon de le faire:

  1. Installer le code-push

Tout d'abord, installez le CodePush CLI:

npm install -g code-push-cli 

Ensuite, allez à la racine de votre React Native projet et utiliser la ligne de commande:

npm install --save react-native-code-push 

redirigent ensuite les bibliothèques:

react-native link react-native-code-push 

Après cela, nous avons besoin de vous connecter en code-push avec notre compte (vous pouvez trouver compte Mobile ici):

code-push login 

vous pouvez également vérifier si vous êtes déjà connecté par commande à l'aide:

code-push whoami 
  1. Créer des clés de déploiement

Avant de déployer des mises à jour, nous avons besoin d'enregistrer une application avec le service CodePush en utilisant la commande suivante:

code-push app add <appName> <os> <platform> 

Pour exemple:

code-push app add myapp-ios ios react-native 

code-push app add my-android android react-native 

Après vous devriez voir ce que vous venez d'ajouter au mobile Center https://mobile.azure.com/apps Et la prochaine étape est la vérification de la clé de déploiement en tapant la ligne de commande:

code-push deployment ls <appName> -k 

Par exemple:

code-push deployment ls myapp-ios -k 

code-push deployment ls myapp-android -k 
  1. déploiement Lien clé

Pour libérer une mise à jour, nous devons lier la clé de déploiement au projet React Native. https://github.com/Microsoft/react-native-code-push#ios

  1. de presse une mise à jour

après le déploiement clé est enfin la mise en place, la dernière étape est de télécharger la première mise à jour. Modifier index.ios.js et index.android.js fichier dans:

import codePush from "react-native-code-push"; 
let codePushOptions = { 
checkFrequency: codePush.CheckFrequency.ON_APP_RESUME, 
installMode: codePush.InstallMode.ON_NEXT_RESUME, 
}; 

class MyApp extends Component { 
... 
} 

export default MyApp = codePush(codePushOptions)(MyApp); 

Et maintenant, tapez la ligne de commande:

code-push release-react <appName> <platform> 

par exemple

code-push release-react myapp-ios ios 

code-push release-react myapp-android android 

Après cette étape, vous verrez la première version est le téléchargement sur Mobile

Le reste est maintenant devient très facile. Chaque fois que nous voulons faire une mise à jour, nous avons juste besoin de taper la ligne de commande du code-push release-react et le code-push fera la mise à jour silencieuse.

Pousser la mise en scène à la production aussi juste une commande métier:

code-push promote <APP_NAME> Staging Production -r 100% 
+0

Merci pour le lien vers la question GitHub. Cela contenait toutes les informations dont j'avais besoin pour résoudre le problème. –