本文主要是介绍关于undefined is not an object(evaluating 'HotUpdate.downloadRootDir')错误的解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
讨论,这是react-native中文网的官网的回答,我再次补充一点。
有很多开发者用了下面的命令成功了发现运行还是不行
$ npm install -g react-native-update-cli
$ npm install --save react-native-update
$ react-native link react-native-update
也有的说link了也还是没用,那我来说说几个解决的思路吧
解决一
有说由于node版本导致link失败的,然后报错,我建议大家可以去android目录下的setting.gradle和app目录下面的build.gradle看看,有没有添加成功,没有的话,自己手动添加。
setting.gradle
include ':react-native-update'
project(':react-native-update').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-update/android')
build.gradle
dependencies {
...
compile project(':react-native-update') // <-- 这一句
...
}
解决办法二
有的人说,我link的时候可以啊,然后我也按照解决办法一,看了下几个gradle,确实都依赖了啊,然后编写代码reload的时候还是报这个错。
这个地方我得要说清楚了,你link了,依赖添加了,这个时候,你是必须要要重新启动应用的,就是执行命令react-native run-android
,因为你之前运行的应用还是之前的apk,即使你reload了,那更新的也只是rn的代码,你android端的代码根本就没更新,所以,link了之后,重新运行应用就可以了
注:这个地方我还遇到一个问题,就是运行项目的时候报NDK错误,react-native-update依赖需要NDK环境,所以,需要在local.propertis里面添加NDK路径
这篇关于关于undefined is not an object(evaluating 'HotUpdate.downloadRootDir')错误的解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!