Warum ist "reactive-native link some-native-modul" eine Lotterie?

9

Ich liebe React Native, meistens. Benutze es seit 0.22. Derzeit auf 0,35.

Aber warum funktioniert das Verknüpfen nativer Bibliotheken wie eine Lotterie? Ich bekomme es selten beim ersten Schuss zu arbeiten, und die Dinge, die brechen, sind oft ganz andere Dinge.

Jedes RN-Upgrade ist ein Pita. Hier ist, was ich normalerweise tue:

  1. npm ich [email protected]
  2. react-native upgrade (antworten Sie auf jede Frage, um Dateien zu ersetzen)
  3. füge meine Sachen in info.plist ein (es wurde ersetzt ..)
  4. ps neu installieren
  5. Verknüpfen Sie alle nativen Module
  6. erneut
  7. halte den Atem an und probiere react-native run-ios

Meistens funktioniert das obige nicht. Aber es funktioniert, wenn ich die App aus XCode kompiliere.

Die Reise von hier zu einem funktionierenden run-ios ist oft lang und frustrierend. Es beinhaltet Folgendes:

  1. entkopple alle nativen Module mit react-native unlink xyz
  2. Entfernen Sie manuell die Header-Suchpfade, die die Verknüpfung nicht entfernt hat
  3. rm -rf node_modules
  4. yarn
  5. Produkt / reinigen Sie aus XCode
  6. installiere Pods
  7. Verknüpfe native Module

Manchmal funktioniert das obige. Meistens funktioniert es nicht. Normalerweise landen einige native Module im Build error-Bereich, wenn ich von react-native run-ios aus laufe. Das Ausführen von XCode funktioniert wie gewohnt.

Die nativen Module, die im Fehlerbereich enden, sind nicht jedes Mal gleich. Ich habe auch einige der nativen Module mit RN-Fehler "ausgeliefert". (RCTGeolocation, RCTActionSheet, RCTWebSocket)

Nächste "Ebene" der Lösung (wenn ich das oben genannte nicht bekommen kann) ist das:

  1. react-native init nextAppAttempt
  2. kopieren Sie Code, Assets, .babelrc usw. in den neuen Ordner
  3. yarn
  4. Verknüpfen Sie alle Module
  5. installiere Pods

Ich hatte Erfolg mit dem oben genannten, aber ich habe das Pita, die App in den richtigen Namen umzubenennen und mich wieder mit meinem GitHub Repo zu verbinden.

Hier sind die nativen Module, die ich verlinke:

%Vor%
  • Was ist hier los?

  • Funktioniert das für andere?

  • Gibt es Fehler in meinem Prozess? (Ich hoffe es)

Michael 19.10.2016, 13:01
quelle

1 Antwort

0

Ich hatte seit einigen Monaten keine der oben genannten Probleme. Ich nehme an, es hat mit einem der letzten RN-Upgrades zu tun. Heute habe ich ohne Probleme von 0,45 auf 0,47 aufgerüstet.

Könnte es sein, dass etwas in RN fixiert ist und diese Probleme weg sind? Ich hoffe es wirklich.

    
Michael 14.09.2017, 21:10
quelle

Tags und Links