Android 工程集成React Native 0.44 注意点

时间:2022-09-12 12:12:56

当前(2017年5月22日 )React Native开发相当火爆,但是搜索下来,没有最新版本0.44集成的教程,因此尝试了一下如何集成到Android原生工程中去。本篇旨在记录出现的问题以及应对方式。

一、集成的过程比较简单,按照教程一步一步来即可:

中文版教程:http://reactnative.cn/docs/0.44/integration-with-existing-apps.html#content

英文版教程:http://facebook.github.io/react-native/docs/integration-with-existing-apps.html

二、按照上述教程集成完毕后,运行出现错误:

1、Error:Conflict with dependency 'com.google.code.findbugs:jsr305'

——这个*有解答,笔者采用的解决方式是在app的build.gradle中添加 androidTestCompile 'com.google.code.findbugs:jsr305:3.0.0'。

2、java.lang.IllegalAccessError: Method 'void android.support.v4.net.ConnectivityManagerCompat.()' is inaccessible to class 'com.facebook.react.modules.netinfo.NetInfoModule'

——本问题在facebook的issue中也有提及以及6152,需要修改support包版本至23.0.1:compile 'com.android.support:appcompat-v7:23.0.1' 以及compile 'com.android.support:design:23.0.1'。以及gradle.properties (在文件末尾添加,android.useDeprecatedNdk=true)。注意此处修改之后,布局文件中的Image属性app:srcCompat将不会识别,换为android:src即可。解决过程参考自https://github.com/Kennytian/embedded第6点。

3、Unable to resolve module `react/lib/ReactDebugCurrentFrame`  或者 Unable to resolve module `react/lib/ReactComponentWithPureRenderMixin`

——此处需要注意在按照教程安装完毕时,可能会有类似的信息‘npm WARN react-native@0.44.0 requires a peer of react@~16.0.0-alpha.6 but none was installed.’ 搜索一下得知,npm install --save react react-native 会使得安装版本不匹配,可运行如下命令:npm install --save react@16.0.0-alpha.6 react-native

4、Can't find variable: __fbBatchedBridge

——主要检查一下npm start是否成功运行,或者尝试 adb reverse tcp:8081 tcp:8081。如果继续出错,可参考这里

5、检查一下android工程的external libraries下的react native版本是不是0.44:如果不是,请修改

 maven {
`url "$rootDir/../node_modules/react-native/android"`//地址是否正确
}
修改url "$rootDir*/..*/node_modules/react-native/android"为url "$rootDir/node_modules/react-native/android" (来自简书

Android 工程集成React Native 0.44 注意点

附送 史上最详细的Android原生APP中添加ReactNative 进行混合开发教程 可供参考。

Android 工程集成React Native 0.44 注意点的更多相关文章

  1. pod installation failed with react native 0.44

    今天在集成react-native-sqlite-storage组件CocoaPods的时候遇到以下错误,这里记录一下错误解决方法: 报错如下: 以为是我Cocoapods的版本问题,于是更新版本: ...

  2. React Native 0.50版本新功能简介

    React Native在2017年经历了众多版本的迭代,从接触的0.29版本开始,到前不久发布的0.52版本,React Native作为目前最受欢迎的移动跨平台方案.虽然,目前存在着很多的功能和性 ...

  3. react native 之 在现有的iOS工程中集成react native

    在现有的iOS工程中集成react native, 或者说将react native引入到iOS 项目,是RN和iOS混合开发的必经之路 参考官网教程:https://reactnative.cn/d ...

  4. iOS原生项目中集成React Native

    1.本文的前提条件是,电脑上已经安装了CocoaPods,React Native相关环境. 2.使用Xcode新建一个工程.EmbedRNMeituan [图1] 3.使用CocoaPods安装Re ...

  5. iOS原生项目集成React Native模块

    今天周末,弄弄Native和React Native之间的交互.首先,先在iOS原生项目中集成React Native模块: 注意事项: 1.因为react native的版本问题,部分细节可能有所不 ...

  6. 现有iOS项目集成React Native过程记录

    在<Mac系统下React Native环境搭建>配置了RN的开发环境,然后,本文记录在现有iOS项目集成React Native的过程,官方推荐使用Cocoapods,项目一开始也是使用 ...

  7. React Native pod install报错 &grave;Yoga &lpar;&equals; 0&period;44&period;3&period;React&rpar;&grave; required by &grave;React&sol;Core &lpar;0&period;44&period;3&rpar;&grave;

    使用pod安装,可能会因为Podfile的路径指向错误或者没有路径指向因为报错. 报错截图如下: 这是因为在指定的路径没有寻找到相应的组件.此时就需要修改podfile文件中的路径,由于上方提示没有  ...

  8. react native 0&period;50与OC交互 &amp&semi;&amp&semi; Swift与RN交互

    新公司也打算做rn,还是得捡起来再度学习.开撸! react native一个版本一个样子,之前写的rn与iOS交互系列在最新版本中有点出入(0.50.4版本).今天填一下坑. 首先上npm版本,re ...

  9. Android原生嵌入React Native

    1.首先集成的项目目录 我使用的是直接按照react-native init Project 的格式来导入的,也就是说,我的Android项目目录是跟node_modules是在一个目录下的. 我们i ...

随机推荐

  1. JavaScript之旅(二)

    JavaScript之旅(二) 二.进阶知识 js的正则表达式 异常处理 调试 变量提升 表单验证 JSON javascript:void(0) JavaScript 代码规范 二.进阶知识 1. ...

  2. Kafka文件的存储机制

    Kafka文件的存储机制 同一个topic下有多个不同的partition,每个partition为一个目录,partition命名的规则是topic的名称加上一个序号,序号从0开始. 每一个part ...

  3. HDU 4539 郑厂长系列故事&horbar;&horbar;排兵布阵&lpar;曼哈顿距离&rpar;

    这虽然是中文题,然而没看懂,不懂的地方,就是在曼哈顿距离这块,网上搜索了一下,写了个程序,是测试曼哈顿距离的. 曼哈顿距离:两点(x1,y1)(x2,y2)的曼哈顿距离为|x1-x2|+|y1-y2| ...

  4. Eclipse配置安卓开发环境&lpar;解决SDK manager下载慢问题&rpar;

    Android新手在eclipse搭建安卓开发环境基本都会遇到Android SDK manager下载慢,ADT下载慢的问题,本文将带大家完整的安装一遍开发环境 工具:eclipse     SDK ...

  5. J2SE知识点摘记&lpar;二十二&rpar;

    Map 1.4.1        概述 数学中的映射关系在Java中就是通过Map来实现的.它表示,里面存储的元素是一个对(pair),我们通过一个对象,可以在这个映射关系中找到另外一个和这个对象相关 ...

  6. 关于thinkphp控制器引用model里的方法的一点收获

    有时候真的是很绕,为了这一点点收获,我几乎花了一天的时间.当我弄明白了的那一刻,我.........好吧,写到这里,我发现不能换行.好吧,就这样吧,开始说正题:要想在controler从model引用 ...

  7. bzoj 4870&colon; &lbrack;Shoi2017&rsqb;组合数问题 &lbrack;矩阵乘法优化dp&rsqb;

    4870: [Shoi2017]组合数问题 题意:求 \[ \sum_{i=0}^{n-1} \binom{nk}{ik+r} \mod p \] \(n \le 10^9, 0\le r < ...

  8. leveldb 学习记录&lpar;五&rpar;SSTable格式介绍

    本节主要记录SSTable的结构 为下一步代码阅读打好基础,考虑到已经有大量优秀博客解析透彻 就不再编写了 这里推荐 https://blog.csdn.net/tankles/article/det ...

  9. C&plus;&plus;中&gt&semi;&gt&semi;&comma;&lt&semi;&lt&semi;的重载问题

    在学习对运算符的重载的时候,重载了++,--(前缀后缀),并且都是在定义为类中的成员函数.但是当我尝试去重载>>,<<为某一个类的成员函数的时候,就会报错,无论如何改参数的属性 ...

  10. linux read&lpar;&rpar;和write

    参考http://www.cnblogs.com/xiehongfeng100/p/4619451.html 1. read总是在接收缓冲区有数据时立即返回,而不是等到给定的read buffer填满 ...