Die folgende Meldung wird angezeigt, wenn ich ein neues Projekt initiiere und dann den Xcode-Emulator starte:
React-Native Version Mismatch
Javascript Version 0.50.1 Native Version: 0.50.0
Stellen Sie sicher, dass Sie den nativen Code neu erstellt haben. ...
Weiß jemand was hier los ist und kann mir helfen?
Bundling 'index.android.js' 100.0% (1/1), done
.build.gradle
Arbeit. danke @Valreact-native run-ios
pod install
Sie auch, wenn Sie Cocoapods verwenden.Falls Sie Ihre React-Native-App mit der Create-React-Native-App erstellt haben. Sie sollten eine app.json (expo) haben. Überprüfen Sie in einer Datei package.json, ob die Expo-Versionen übereinstimmen, und ändern Sie sie entsprechend. In meinem Fall bestand das Problem beispielsweise darin, dass ich in der Datei app.json eine Version 25.0.0 für das Attribut expo sdkVersion hatte. Ich ändere diese in 23.0.0 und alles funktionierte.
package.json:
app.json:
quelle
Gehen Sie einfach zu Ihrem
android/app/build.gradle
und fügen Sie dann demdependencies
Abschnitt hinzu:/// Die native Native-Version finden Sie in package.json
quelle
Erzwinge einfach die Reaktion der nativen Version in der Gradle-Datei auf App-Ebene deines Android im
dependencies
Abschnitt.arbeitete für mich
quelle
npm start -- --reset-cache
und liefreact-native run-android
Ich habe diesen Fehler noch nie gesehen, aber wenn ich Xcode und React-Native nicht dazu bringen kann, gut zusammen zu spielen, mache ich ein paar Dinge. Überprüfen Sie, mit welcher Version von Xcode ich arbeite. Wenn es aktualisiert werden muss, aktualisiere ich es. Dann ist das Löschen des Wachmanns und des Caches der zweite Ort, an den ich gehe. Ich verwende den Befehl zum Zurücksetzen des Cache nicht. Es heißt immer, dass ich den Cache überprüfen muss, also überspringe ich das (Sie können es aber tun, ich werde nur verwirrt). Ich benutze rm -rf $ TMPDIR / react- *, um zwischengespeicherte Builds zu entfernen. Wenn das nicht funktioniert, versuche ich, die App in Xcode zu erstellen, und arbeite mich dann von dort aus vor, um sie mit reaktionsnativen Run-Ios zu erstellen. Mit dieser Fehlermeldung scheinen Sie zunächst zu versuchen, sie mit Xcode zu erstellen. Hoffe das hilft ... lass mich wissen, wie weit du damit gekommen bist. Viel Glück! (Sie können auch auf RN 0 aktualisieren.
quelle
Wenn Sie Ihre React Native-App über Expo ausführen, kann ein Upgrade von React Native diesen Fehler verursachen (siehe https://github.com/expo/expo/issues/923 ).
Wenn dies Ihr Szenario ist, haben Sie folgende Möglichkeiten:
package.json
) auf eine Version, die mit Ihrer React Native-Version kompatibel ist ( falls vorhanden, was möglicherweise nicht der Fall ist - gemessen am verknüpften Problem, denke ich, dass die Expo-Unterstützung die React Native-Versionen verfolgt).quelle
Ich hatte dieses Problem am längsten und keine der oben genannten Lösungen half. Ich war gerade
create-react-native-app
dabei, React Native in einem Projekt zu aktualisieren, bis ich herausfand, dass nicht alle Versionen von Expo das neueste React Native unterstützen.Diese Seite wurde in der Dokumentation verlinkt, die zeigt, welche Versionskombinationen von React Native, React und Expo offiziell unterstützt werden:
Quelle: https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md
Durch Bearbeiten der
app.json
undpackage.json
-Dateien entsprechend den entsprechenden Versionen und Ausführennpm install
funktionierte alles wieder.quelle
Ich benutze ein physisches Gerät. In meinem Fall hat dies das Problem gelöst:
lsof -i :8081
kill -9 PID
react-native run-android
oderreact-native run-ios
)quelle
lsof -i :8081
und das Wiederherstellen haben es für mich in iOS Simulator getan.Fügen Sie in Ihrer build.gradle-Datei Folgendes hinzu
Ersetzen Sie
0.51.0
durch die Version in Ihrer package.jsonquelle
Für Android-Entwickler, die das Problem nicht durch Schließen und erneutes Erstellen beheben konnten, deinstallieren Sie die App manuell auf dem Emulator / Gerät.
quelle
Versuchen Sie erneut, die Abhängigkeiten zu installieren. Das hat bei mir funktioniert-
1.)
yarn/npm install
2.)
yarn/npm start --reset-cache
quelle
Für mich war es auf Grund
react-native
Version independency
Abschnittpackage.json
Datei. Es war:Ich habe es geändert zu:
Jetzt funktioniert es gut.
quelle
In meinem Fall habe ich es mit iOS zu tun, und ich habe versucht, den gesamten Cache mit dem folgenden Befehl zurückzusetzen und zu löschen, bin aber auch fehlgeschlagen, obwohl viele Kommentare besagen, dass die Hauptursache darin besteht, dass irgendwo versehentlich ein React Packager ausgeführt wird. Ich habe neu gestartet Mein Mac und das Problem blieben weiterhin bestehen.
Die Lösung besteht darin, den Build-Ordner @ zu löschen
/ios/build
und dannreact-native run-ios
gelöst auszuführenquelle
Ich habe die oben genannten Lösungen ausprobiert, aber das Hinzufügen zu AndroidManifest.xml scheint das Problem zu beheben.
quelle
Für andere mit dem gleichen Problem unter iOS mit CocoaPods:
Ich habe alle oben genannten Lösungen ohne Glück ausprobiert. Ich habe einige Pakete mit nativen Abhängigkeiten in meinem Projekt und einige der benötigten Pod-Module werden installiert. Das Problem war, dass React in meiner Poddatei angegeben wurde, der React-Pod jedoch nicht automatisch mithilfe von aktualisiert wurde
react-native-git-upgrade
.Das Update besteht darin, alle installierten Pods durch Ausführen zu aktualisieren
cd ios && pod install
.quelle
In meinem Fall hat die Installation eines neuen virtuellen Geräts geholfen. Jetzt benutze ich 1 Gerät pro App.
quelle
Expo-Benutzer -
app.json
Stellen Sie sicher, dass Ihre SDK-Version und Ihrepackage.json
Expo-Version miteinander kompatibel sind (möglicherweise gleich sind).quelle
Ich hatte auch dieses Problem mit Expo und iOS Simulator. Was für mich funktioniert hat, war das Löschen des Simulators in
Hardware > Erase All Content and Settings...
quelle
Mögliche Lösung:
watchman watch-del-all && rm -rf $TMPDIR/react-* && rm -rf $TMPDIR/haste-map-react-native-packager-* && rm -rf node_modules/&& npm install
Wenn das Problem weiterhin besteht, versuchen Sie, das Projekt direkt vom Xcode aus auszuführen
Das hat bei mir funktioniert.
quelle
In meinem Fall (NICHT mit Expo & Android Build)
package.json
Und app.json
Das Problem wurde behoben
quelle
Ich habe versucht, eine React Native-App aus WebStorm zu erstellen und auszuführen, und bin auf dieses Problem gestoßen. Die einfache Lösung für mich war:
Wenn
watchman
es unter macOS noch nicht installiert ist, installieren Sie es mit Homebrew :quelle
Es kommt manchmal vor, dass Sie versuchen, die Datei auszuführen, ohne den Knotenserver zu schließen, auf dem die vorherige App ausgeführt wurde. Starten Sie daher React neu. Führen Sie dazu einfach die folgenden Befehle aus:
quelle
In meinem Fall habe ich die
expo
Version manuell geändert . Ich habe das gleiche Problem, weil ich vergessen habe, sdkVersion in app.json und babel- preset -expo in package.json zu aktualisierenNach diesem Lauf:
expo r -c
um den Cache zu leeren und die App zu starten.quelle
Wir haben sichergestellt, dass die Variablen ANDROID_HOME und PATH vor dem Build eingerichtet wurden.
Führen Sie zuerst die folgenden zwei Befehle aus und erstellen Sie dann die App für das Gerät.
quelle
Ich habe diese Klassifizierung erhalten, wenn die TypeScript-Typdefinitionen nicht übereinstimmen.
EG
react-native
bei 0,61,5 Zolldependencies
und@types/react-native
bei 0,60,0 ZolldevDependencies
.Sobald ich devDependencies aktualisiert habe, hat es funktioniert. Musste nichts neu starten.
quelle
Dies ist kein Fix, aber in meinem Fall waren mehrere RN-Apps auf meinem Gerät installiert, und ich habe unwissentlich versucht, aus der falschen Anwendung heraus neu zu laden. (Ich entwickle gerade zwei Apps gleichzeitig.) Stellen Sie also sicher, dass Sie in der richtigen Anwendung sind!
quelle
Versuchen Sie, die in Ihrem package.json angegebene Version Ihres React-Native (unter Abhängigkeiten - React-Native) in die in der Fehlermeldung angegebene 'Native Version' zu ändern. Führen Sie dann erneut 'npm install' aus.
quelle
Ich habe das gleiche Problem beim Erstellen meiner reaktiven nativen App für Android und ich habe Folgendes getan, was für mich funktioniert hat.
Die "JavaScript-Version 0.50.1" in der Fehlerkonsole ist die reaktionsnative Version in Ihrer
package.json
Datei. Stellen Sie sicher, dass es sich um dieselbe Version wie "Native Version 0.50.0" in der Fehlerkonsole handelt.react-native run-android
.quelle
Stellen Sie außerdem sicher, dass das WLAN in Ihrem Emulator aktiviert ist
quelle
Öffnen Sie projectdir / android / app / build.gradle
Versuchen:
compile ("com.facebook.react: react-native: 0.51.0") {force = true}
Anstatt "com.facebook.react: react-native: 0.51.0" zu kompilieren {force = true}
Ref.: Link
quelle