当我初始化一个新项目,然后启动Xcode模拟器时,得到以下消息:

React-Native版本不匹配 Javascript版本0.50.1 本机版本:0.50.0 确保您已经重新构建了本机代码. ...

有谁知道这是怎么回事能帮帮我吗?


当前回答

在我的情况下(不使用博览会和Android构建)

package.json

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

和app.json

{
  "sdkVersion": "27"
}

解决问题

其他回答

对于使用monorepo运行的我来说,在yarn.lock中有一个隐藏的react-native版本。它不存在于任何包装中。Json,但从未被删除。

我从yarn中删除了特定的react-native版本。锁上,又做了一个

yarn install

这清理了很多旧的东西,并确保一切正常工作。

安装一个新的模拟器和关闭所有终端,只在我从Android Studio运行时才适用。现在已经不管用了。

有点违反直觉,但我注意到,当我从Android Studio运行时,地铁捆绑终端没有启动。

所以我从终端执行npx react-native run-android(这没有工作,但它确实启动地铁捆绑器),然后我从Android Studio运行该应用程序,它工作!

只要去你的android/app/build。Gradle,然后添加到依赖项部分:

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

/// react的原生版本可以在package.json中找到

这对我很有效

博览会更新39.0.0 -npm

因为我的expo版本是38(Check in package.json)。

这尤其适用于Android Studio 3.2或更新的用户,因为这在升级之前似乎没有发生。

如果你没有在你的配置(包)中更改React Native的版本。),版本不匹配的问题可能来自于检出git中的另一个提交后对项目文件的未检测到的更改。要克服这个问题,请确保:

清洁构建:构建>清洁项目 用Gradle文件同步项目:在导航栏上的“停止”按钮旁边 制作项目:导航栏中第一个带有锤子图标的按钮 最后运行/调试应用程序

这也将克服会话“应用程序”:错误安装APK错误,可能发生由于即时运行,一旦应用程序从设备上卸载。