React Native 之坑

一、运行React Native项目遇到的坑

1、React Native项目连接不上 模拟器或者手机

Error:

Could not install the app on the device, read the error above for details

明明连接上模拟器或者手机了,但是RN project说不识别
方法:
在项目根目录运行下面命令,提升权限

chmod 755 android/gradlew
2、Facebook本身的坑
[SyntaxError:Strict mode does not allow function declaration 
in a lexically nested statement.]

方法:
修改React Native版本号!

3、react-native-vector-icons build error
Error: react-native-vector-icons:compileReleaseJavaWithJavac

方法: 一般是用Windows的电脑,有个文件名长度的限制,所以找到error中的文件,然后删除,重新react-native run-android 就可以了!

4、
error.png

解决方法:
cd android
sudo ./gradlew clean

5、react-native 项目运行在真机上面

com.android.ddmlib.InstallException: Failed to establish session
    at com.android.ddmlib.Device.installPackages(Device.java:894)
    ........
    at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
:app:installDebug FAILED

FAILURE: Build failed with an exception.

主要是国产机,我用的红米手机,解决办法就是
打开开发者选项,然后找到开启MIUI优化选项,然后关闭他,重启手机 就可以了

6、setState(…): Can only update a mounted or mounting component. This usually means you called setState() on an unmounted component. This is a no-op

在React Native中控制控件的隐藏或者显示是通过this.setState boolean变量来设置的,但是重复设置会导致这个Warnning,所以需要在setState之前要加一个判断,避免重复设置. 比如如下设置

if (!this.state.loaded){
      this.setState({loaded: true});
}

------------------------------------分割线----------------------------------------

二、在现有Android项目中集成RN遇到的坑

1、在现有Android项目中初始化RN配置,重新sync gradle出现下面错误

Error:Conflict with dependency 'com.google.code.findbugs:jsr305' in project ':app'. Resolved versions for app (3.0.0) and test app (2.0.1) differ. See http://g.co/androidstudio/app-test-app-conflict for details.

解决方法在:app/build.gradle里面添加

android{
    configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:3.0.0'
    }
}

然后重新sync gradle,问题解决了!!,但是too young too sample,还没好遇到下面的问题了!!
2、

Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed with multiple errors, see logs

解决方案:rn最低支持Android4.1

minSdkVersion 16
targetSdkVersion 25
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,173评论 25 709
  • React Native学习<一> 认识Recat Native 博客原文:http://www.jianshu....
    AFinalStone阅读 7,602评论 0 12
  • 序 今天的内容,可能有很多人会觉得很好笑,查词典谁不会啊,无论是纸质词典还是手机电脑上的软件,都会啊;可是,我就不...
    才少说阅读 2,707评论 2 0
  • 自己成长不少吧。以前被说坏话,可能会很气愤忧伤自责很久,现在跟同学打的电话倾诉一下,然后从正反两个方面来思考,却...
    忽尔今至阅读 968评论 0 0
  • 总是会不经意的关注她的动态,没有为什么,就是想看看现在的她在干什么,每一次还会想到底该不该点赞,评论就算了,...
    纳兰小轩阅读 921评论 0 0