博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React Native 安卓 程序运行报错: React Native version mismatch(转载)
阅读量:4516 次
发布时间:2019-06-08

本文共 1012 字,大约阅读时间需要 3 分钟。

这个问题已经得到解决,参照stackoverflow上的问题:

这个问题的原因就处在Android工程中app/build.gradle中,build.gradle中对于 react-native库的版本的配置默认是这么写的:

compile 'com.facebook.react:react-native:+'

这个最后面的 “+” 表示的是使用最新的版本号。

也就是说,我们Android工程中,依赖的React native 的native代码版本号是使用网络上发布的最新版本。
这也是我们这个问题产生的根本原因。
按照上面链接中的问题的回答,进行如下修改:

compile ('com.facebook.react:react-native:0.54.3') { force = true }

再执行 react-native run-android,一切恢复正常。真是个大坑,耽误了自己一上午的时间。

补充:

报这个错误还有一种情况,那就是我们先用react-native run-android运行了其他的不同RN版本的工程,这个时候,如果我们不关闭其他运行中的RN工程的调试进程就在我们想要启动的工程下面运行react-native run-android 命令的话,也会在安装的 app中报这个错误,也就是对应 stack overflow 链接中的票数最多的回答。

总结一下:

产生这个错误可能有两种情况:
第一种情况,也是比较常见的情况是:有其他不同RN版本号的工程以开发模式运行,这时如果我们以 react-native run-android 运行我们自己想要调试的工程的话,会报这个错误。
第二种情况,可能相比第一种情况不常见,原因在于可能在我们的开发周期内,RN的Native版本库不一定会更新。第二种情况就是,我们在Android工程中配置的RN库版本与 JS工程中配置的RN库版本不一致。这种情况下只需将 android/app/build.gradle 下的RN库默认配置改为:

compile ('com.facebook.react:react-native:0.54.3') { force = true } // 0.54.3 处变为自己的JS工程中的相应版本号

问题即可解决。

转载于:https://www.cnblogs.com/qiyecao/p/9721658.html

你可能感兴趣的文章
如何解决虚拟机安装centos无法全屏显示问题!
查看>>
内部跳转(请求转发)和外部跳转(重定向)的区别?
查看>>
GWT(Google Web Tookit) Eclipse Plugin的zip下载地址(同时提供GWT Designer下载地址)
查看>>
开发extjs常用的插件
查看>>
ASP.NET中Request.InputStream使用
查看>>
参数化曲面的绘制
查看>>
关于datawindow does not have update capability
查看>>
第六周学习总结
查看>>
UITableViewDataSource Protocol Reference
查看>>
hdu 1251 统计难题 (字典树入门题)
查看>>
Java-API-Package:org.springframework.web.bind.annotation
查看>>
做法:做法
查看>>
umask 文件默认权限
查看>>
JSON parse error: No suitable constructor found for type
查看>>
Luogu P4161 [SCOI2009]游戏 数论+DP
查看>>
【luogu4145】 上帝造题的七分钟2 / 花神游历各国 [线段树]
查看>>
C++笔记(2018/2/7)
查看>>
Atan2
查看>>
ThinkSNS+ 是如何计算字符显示长度的
查看>>
JSTL的使用
查看>>