当前(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'

——这个stackoverflow有解答,笔者采用的解决方式是在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原生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报错 `Yoga (= 0.44.3.React)` required by `React/Core (0.44.3)`

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

  8. react native 0.50与OC交互 && 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. 基于MVC和Bootstrap的权限框架解决方案 二.添加增删改查按钮

    上一期我们已经搭建了框架并且加入了列表的显示, 本期我们来加入增删改查按钮 整体效果如下 HTML部分,在HTML中找到中意的按钮按查看元素,复制HTML代码放入工程中 <a class=&qu ...

  2. .Net MVC4笔记之js css引用与压缩

    1.引用时,可以用即可以直接使用“~”来表示根目录. 引入js 引入js 引入css <link href="~/Content/uploadify/uploadify.css&quo ...

  3. vim工具

    今天和同事讨论使用什么看代码,使用什么写代码的问题.我觉得source insight用来看代码真的还是蛮舒服的,但是他觉得他习惯了VS,用着顺手. 但是我的想法是,有好的工具,得先花点时间去学习使用 ...

  4. 浅谈MVC页面之间参数传递

    关于MVC页面之间的传值,有多种方式,下面,我们就Html.RenderAction 方式 和 Html.RenderPartial 方式 来给大家分享一下有什么不同. 一.Html.RenderAc ...

  5. 看看我做的一款 时间轴 插件 timegliderJs

    TimegliderJs 是一款基于jQuery的时间轴插件.完成后效果. 介绍 Timeglider JS是一个由javascript支持缩放,数据驱动的时间轴组件.非常适合显示项目历史,项目计划及 ...

  6. 统计学习方法:罗杰斯特回归及Tensorflow入门

    作者:桂. 时间:2017-04-21  21:11:23 链接:http://www.cnblogs.com/xingshansi/p/6743780.html 前言 看到最近大家都在用Tensor ...

  7. Java 设计模式(四)-工厂方法模式 (FactoryMethod Pattern)

    1     概念定义 1.1   定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 1.2   类型 创建类模式 2     原理特征 2.1   类 ...

  8. Linux-进程描述(4)之进程优先级与进程创建执行

    进程优先级 进程cpu资源分配就是指进程的优先权(priority).优先权高的进程有优先执行权利. 权限与优先级.权限(privilege)是指在多用户计算机系统的管理中,某个特定的用户具有特定的系 ...

  9. 随机抽样一致算法(Random sample consensus,RANSAC)

    作者:桂. 时间:2017-04-25  21:05:07 链接:http://www.cnblogs.com/xingshansi/p/6763668.html 前言 仍然是昨天的问题,别人问到最小 ...

  10. [Day02] int, str功能学习

    第二天任务: int的常用功能,参照该篇博客里面列举的常用功能 http://13683137989.blog.51cto.com/9636221/1911393 str的常用功能(重要) ,参照该篇 ...