React Native version mismatch

React NativeReact Native-AndroidReact Native-Ios

React Native Problem Overview


Getting the following message when I init a new project and then launch the Xcode emulator:

> React-Native Version Mismatch > > Javascript Version 0.50.1 > Native version: 0.50.0 > > Make sure you have rebuilt the native code. ...

Does anyone know what is going on here and can help me?

React Native Solutions


Solution 1 - React Native

This is what I've done with it:

> Close all terminals and run build again.

You may forget to close nodejs terminal from another project, and they happen to have installed different react version.

So the code fetches from nodejs server conflicts with the native one.

Solution 2 - React Native

In case you created your react-native app using create-react-native-app. You should have a app.json (expo). and a package.json file, check if the expo versions match and change accordingly. For example in my case the problem was that in the app.json file I had a 25.0.0 version for the expo sdkVersion attribute, I change that to 23.0.0 and everything worked.

package.json:

"dependencies": {
    "expo": "^23.0.4",
    "react": "16.0.0",
    "react-native": "^0.50.4"
  }

app.json:

{
  "expo": {
    "sdkVersion": "23.0.0" // before was 25.0.0
  }
}

Solution 3 - React Native

Just go to your android/app/build.gradle and then add to the dependencies section:

dependencies{
compile ("com.facebook.react:react-native:0.50.3") { force = true } 
}

/// the react native version can be found in package.json

Solution 4 - React Native

For Android developers who couldn't get it fixed by just closing and rebuilding, Manually uninstall the app on the emulator/device.

Solution 5 - React Native

just force react native version in your android's app level gradle file, in the dependencies section.

compile ("com.facebook.react:react-native:0.52.0") { force = true }

worked for me

Solution 6 - React Native

If you're running your React Native app through Expo, upgrading React Native is liable to cause this error (as noted at https://github.com/expo/expo/issues/923).

If that's your scenario, your options are:

  1. Bump Expo (which is listed in your package.json) to a version that is compatible with your React Native version (if one exists, which may not be the case - judging by the linked issue, I figure that Expo support trails React Native releases).
  2. Discard your changes, delete and reinstall your Node modules, Eject from Expo, and then (after checking that you can still run your app post-ejection) try your upgrade again.

Solution 7 - React Native

I've never seen this error before, but whenever I can't get Xcode and React-Native to play well together, I do a couple of things. Check what version of Xcode I'm working with. If it needs to be updated, I update it. Then clearing watchman and the cache are the second place I go. I don't use the reset cache command. It always says that I need to verify the cache, so I skip that (you can do it though, I just get confused). I use rm -rf $TMPDIR/react-* to get rid of any cached builds. If that doesn't work, I try to build the app in Xcode, then work my way from there, to build it with react-native run-ios. With this error message, it seems you might start by trying to build it with Xcode. Hope that helps...let me know your progress with it. Good luck! (Also, you could update to RN 0.51 as another attempt to get your versions synced.)

Solution 8 - React Native

I had this problem for the longest time and none of the above solutions helped. I was in the middle of upgrading react native in a create-react-native-app project until I found out that not all versions of Expo support the latest React Native.

Found this page linked in the documentation that shows which version combinations of React Native, React, and Expo are officially supported:

Source: https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md

Editing the app.json and package.json files to match the corresponding versions and running npm install got everything working again.

Solution 9 - React Native

I am using a physical device, in my case this solved the problem:

  1. Uninstall the app
  2. lsof -i :8081
  3. kill -9 PID
  4. Rebuild the app (react-native run-android or react-native run-ios)

Solution 10 - React Native

In your build.gradle file add the following

implementation ("com.facebook.react:react-native:0.51.0") {
    force = true;
}

replace 0.51.0 with the version in your package.json

Solution 11 - React Native

Try installing the dependencies again. That worked for me-

1.) yarn/npm install
2.) yarn/npm start --reset-cache

Solution 12 - React Native

For me it was due to react-native version in dependency section of package.json file. It was:

"dependencies": {
"expo": "^27.0.1",
"react": "16.3.1",
"react-native": "~0.55.0"
}

I chaged it to:

"dependencies": {
"expo": "^27.0.1",
"react": "16.3.1",
"react-native": "0.52.0"
}

Now it works fine.

Solution 13 - React Native

In my case installing a new virtual device helped. Now I am using 1 device per app.

Solution 14 - React Native

It happens sometimes when you try to run without closing the node server, in which the previous app was running, so try restarting React.To do so, just run the following commands:

1. To kill current processes
killall node -9 

2. To Start React  Native
react-native start 

3. Then Run android
react-native run-android

Solution 15 - React Native

For my case I'm facing it on iOS, and I've tried to reset and clear all cache using below command but failed too, despite many comments saying that the root cause is there is react packager running somewhere accidentally, I've restarted my mac and the problem still remained.

watchman watch-del-all && rm -rf node_modules/ && yarn cache clean && yarn install && yarn start --reset-cache

The solution is, to delete the build folder @ /ios/build, then execute react-native run-ios solved it

Solution 16 - React Native

I have tried the solutions above but adding this to AndroidManifest.xml seems to fix it.

  android:usesCleartextTraffic="true"

Solution 17 - React Native

For others with the same problem on iOS with CocoaPods:

I tried all of the solutions above, without luck. I have some packages with native dependencies in my project, and some of those needed pod modules being installed. The problem was that React was specified in my Podfile, but the React pod didn't automatically get upgraded by using react-native-git-upgrade.

The fix is to upgrade all installed pods, by running cd ios && pod install.

Solution 18 - React Native

The fix we did was to make sure the ANDROID_HOME and PATH variables were set up prior to the build.

First, run the below two commands then the build the app for the device.

export ANDROID_HOME=/Users/username/MyFiles/applications/androidsdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

Solution 19 - React Native

Expo users - make sure your app.json sdk version and package.json expo version are (may be equal) compatible to each other.

Solution 20 - React Native

This is working for me :

react-native start --reset-cache

Solution 21 - React Native

edit your package.json for your javascript version

"react-native": "^0.50.1",

after run

npm install

Solution 22 - React Native

I also had this issue using Expo and iOS Simulator. What worked for me was erasing the Simulator in Hardware > Erase All Content and Settings...

Solution 23 - React Native

I have got the same issue while building my react native app for android and I did the following which worked for me.

The "JavaScript version 0.50.1" in the error console is the react-native version in your package.json file. Make sure it is the same version as "Native version 0.50.0" in the error console.

  1. I have Updated the react-native version to the "Native Version 0.50.0" as prompted in the error console.
  2. Rebuild the app react-native run-android.

Solution 24 - React Native

Possible Fix:

  1. Delete the package-lock.json
  2. Run: watchman watch-del-all && rm -rf $TMPDIR/react-* && rm -rf $TMPDIR/haste-map-react-native-packager-* && rm -rf node_modules/&& npm install

If the problem persists, try to execute the project directly from the Xcode

This worked for me.

Solution 25 - React Native

In my case (NOT using expo & Android build)

package.json

"dependencies": {
    "react": "16.3.1",
    "react-native": "0.55.2"
}

And app.json

{
  "sdkVersion": "27"
}

resolved the issue

Solution 26 - React Native

I was trying to build and run a React Native app from WebStorm and ran into this problem. The simple solution for me was:

watchman watch-del-all

On macOS, if watchman is not already installed, install it using Homebrew:

brew install watchman

Solution 27 - React Native

In my case, I changed the expo version manually. I got the same issue because I forgot to update sdkVersion in app.json and babel-preset-expo in package.json

After that run: expo r -c to clear cache and start the app.

Solution 28 - React Native

This Answer is Published in 2020, Fix this Error in 3 steps:

First step: I changed the value of expo in package.json file to the latest supported version, according to expo documents(visit here).

Second step: I changed the value of sdkVersion in app.json file to the same value of expo in package.json.( equal number to last step).

Third step : I changed the value of react-native in package.json file to the same value of React Native Version , according to expo documents(visit here).

now your ready to go.

use npm install to install specified version of dependencies and then npm start to run the project

Solution 29 - React Native

I got this classing when TypeScript type definitions mismatched.

E.G react-native at 0.61.5 in dependencies and @types/react-native at 0.60.0 in devDependencies.

As soon as I updated devDependencies it worked. Didn't have to restart anything.

Solution 30 - React Native

For me, who is running with a monorepo, there was a hidden react-native version inside yarn.lock. It was not present in any package.json, but was never deleted.

I removed that particular react-native version from yarn.lock, and did a

yarn install

This cleaned out alot of old stuff and made sure that things was working fine.

Solution 31 - React Native

This is not a fix, but in my case, I had multiple RN apps installed on my device and I was unknowingly attempting to 'Reload` from within the wrong application. (I'm developing two apps simultaneously at the moment) So make sure you're in the correct application!

Solution 32 - React Native

Try changing the version of your react-native specified in your package.json (under dependencies - react-native) to the same as 'Native Version' shown in the error message. Then run 'npm install' again.

Solution 33 - React Native

Make sure also that the wifi is enabled in your emulator

Solution 34 - React Native

Opene projectdir/android/app/build.gradle

Try:

compile("com.facebook.react:react-native:0.51.0") { force = true }

Instead of compile "com.facebook.react:react-native:0.51.0" { force = true }

Ref.: Link

Solution 35 - React Native

In my case, my android physical device does not connect to the js server running on my development machine. So i have to manually set the debug server host & port on my android device.

Solution 36 - React Native

This would be especially applicable for Android Studio 3.2 or newer users, as this did not seem to happen before upgrading.

If you didn't change the version of React Native in your configuration (package.json, build.gradle), the problem with the version mismatch could come from undetected changes to project files after checking out another commit in git. To overcome that, make sure to:

  • Clean the build: Build > Clean Project

  • Sync Project with Gradle files: next to the Stop button on navigation bar

  • Make Project: first button in navigation bar with an hammer icon

  • And finally Run / Debug app

This would also overcome the Session 'app': Error Installing APK error that might happen due to Instant Run once the app is uninstalled from the device.

Solution 37 - React Native

Close the nodejs terminal and Rebuild.

Solution 38 - React Native

I was able to fix this by deleting node_modules and running npm install again

Solution 39 - React Native

I update the react-native version: 0.57.4 to 0.59.8 and i getting the following message "React-Native Version Mismatch"

This solution works for me:

1.- In the folder of the project, update all the code react-native in the Android Studio:

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/

2.- Go to Android Studio and FILE->>INVALIDATE CACHES/RESTART
3.- In Android Studio, BUILD->>CLEAN PROJECT
4.- In Android Studio, BUILD->>REBUILD PROJECT
5.- Delete App in simulator or Devices
6.- Run...

I hope to help you!

Solution 40 - React Native

All those answers about changing versions to match whatever were wrong for me.

What the error does not tell you is where that version is coming from. Running a search of all files, I found that there was only 1 place where the javascript version was defined: The problem was that the bundle (\android\app\src\main\assets\index.android.bundle) needed to be regenerated as it was containing older versions compared to the installed bundle.

In order to regenerate that file, I had to run the following command:

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

And because I had upgraded my react-native, running this command gave me a few errors I needed to resolve (mainly installing new dependencies).

Clearing cache, reloading in android studio, reloading react, reloading the terminal, creating a new project and transfering the files, running watchman, all did not work as that specific bundle file happens to be tracked in the Git repo.

Solution 41 - React Native

This worked for me

expo update 39.0.0 --npm

As my expo version was 38(Check in package.json).

Solution 42 - React Native

I found an answer from stackoverflow another question and I like to place it here.

> First step: I changed the value of expo in package.json file to the latest supported version, according to expo documents(visit here).

> Second step: I changed the value of sdkVersion in app.json file to the same value of expo in package.json.( equal number to last step).

if sdkVersion not exists in your app.json file, please add it like this. "sdkVersion": "xx.x.x" (same as expo version in package.json)

> Third step : I changed the value of react-native in package.json file to the same value of React Native Version , according to expo documents(visit here).

Solution 43 - React Native

Delete your application from your device and then install it again

Solution 44 - React Native

for my problem fix this when change emulator with API Level below 28. this source of problem because of network changes in API Level 28 and above. fix this problem by add

<application
     android:usesCleartextTraffic="true"

to androidManifest.xml

Solution 45 - React Native

I've had this issue after manually updating my packages. Removing all projects from the Expo Go app and running expo update fix the problem automatically for me.

Solution 46 - React Native

Installing a new emulator and closing all terminals used to work for me and only when I ran from Android Studio. Now that's not working anymore.

A bit counterintuitive but I noticed that when I ran from Android Studio received that error the metro bundler terminal wasn't launching.

enter image description here

So I executed npx react-native run-android from terminal (which didn't work but it did launch the metro bundler) , then I ran that app from Android Studio and it worked!

enter image description here

Solution 47 - React Native

I updated the SDK version in app.json to match with the react native SDK version in package.json to fix this issue

In app.json

"sdkVersion": "37.0.0",

In package.json

"react-native": "https://github.com/expo/react-native/archive/sdk-37.0.1.tar.gz",

Solution 48 - React Native

For me, I had to open multiple node js terminal for react native and forgot to close before running app into my android device. I close the terminal and run again and it loaded the page successfully

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionSam RaoView Question on Stackoverflow
Solution 1 - React NativeValView Answer on Stackoverflow
Solution 2 - React NativevictoryoalliView Answer on Stackoverflow
Solution 3 - React Nativekunal palView Answer on Stackoverflow
Solution 4 - React NativeNadun LiyanageView Answer on Stackoverflow
Solution 5 - React NativeShubham GoelView Answer on Stackoverflow
Solution 6 - React NativeMark AmeryView Answer on Stackoverflow
Solution 7 - React NativeJared Nelson View Answer on Stackoverflow
Solution 8 - React NativeYatit ThakkerView Answer on Stackoverflow
Solution 9 - React Nativeade_anugerahView Answer on Stackoverflow
Solution 10 - React NativeNitish PhanseView Answer on Stackoverflow
Solution 11 - React NativeAditi GuptaView Answer on Stackoverflow
Solution 12 - React NativeSeyed Morteza MousaviView Answer on Stackoverflow
Solution 13 - React NativeLuminita BalasView Answer on Stackoverflow
Solution 14 - React Nativecivani mahidaView Answer on Stackoverflow
Solution 15 - React NativeIsaacView Answer on Stackoverflow
Solution 16 - React NativeketimaBUView Answer on Stackoverflow
Solution 17 - React NativebrknView Answer on Stackoverflow
Solution 18 - React NativeSaif KamaalView Answer on Stackoverflow
Solution 19 - React NativecherankrishView Answer on Stackoverflow
Solution 20 - React NativeParveen ChauhanView Answer on Stackoverflow
Solution 21 - React NativeFerhat KOÇERView Answer on Stackoverflow
Solution 22 - React NativecaticoView Answer on Stackoverflow
Solution 23 - React NativeAnand YadavView Answer on Stackoverflow
Solution 24 - React NativeAlejoView Answer on Stackoverflow
Solution 25 - React NativeAjitsenView Answer on Stackoverflow
Solution 26 - React NativefriederbluemleView Answer on Stackoverflow
Solution 27 - React NativeGiang PhanView Answer on Stackoverflow
Solution 28 - React NativesinaView Answer on Stackoverflow
Solution 29 - React NativeThomas HagströmView Answer on Stackoverflow
Solution 30 - React NativevonGohrenView Answer on Stackoverflow
Solution 31 - React NativeFriendly-RobotView Answer on Stackoverflow
Solution 32 - React NativePnar Sbi WerView Answer on Stackoverflow
Solution 33 - React NativeThe DninoView Answer on Stackoverflow
Solution 34 - React NativeKhurshid AnsariView Answer on Stackoverflow
Solution 35 - React NativeGamz RsView Answer on Stackoverflow
Solution 36 - React NativeSiavasView Answer on Stackoverflow
Solution 37 - React NativeAshutosh DashView Answer on Stackoverflow
Solution 38 - React NativeDazzleView Answer on Stackoverflow
Solution 39 - React NativeIng RicoView Answer on Stackoverflow
Solution 40 - React NativeFMaz008View Answer on Stackoverflow
Solution 41 - React NativeShreya BView Answer on Stackoverflow
Solution 42 - React NativeRajitha UdayangaView Answer on Stackoverflow
Solution 43 - React NativePushpendra ChouhanView Answer on Stackoverflow
Solution 44 - React NativeAliTNView Answer on Stackoverflow
Solution 45 - React NativeDaniel DanieleckiView Answer on Stackoverflow
Solution 46 - React Nativesigmapi13View Answer on Stackoverflow
Solution 47 - React NativeKalyan Chakravarthy SView Answer on Stackoverflow
Solution 48 - React NativeQuick learnerView Answer on Stackoverflow