RN Android源码打包方法

本文介绍如何在遇到React Native (RN) 的Android原生依赖问题时,通过两种方法直接依赖并编译RN的原生源码来解决这些问题。一种方法是直接依赖/node_modules/react-native/ReactAndroid工程进行编译;另一种方法是从RN的源码库中下载特定版本的源码并通过Android Studio进行编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景知识:
通常我们在项目中依赖的RN的库文件是在本地的,是在node_modules/react-native/android文件夹下的aar包
通过在项目build.gradle文件中配置一个本地的maven地址来索引,如下

maven {
// All of React Native (JS, Android binaries) is installed from npm
url “$rootDir/node_modules/react-native/android”
}
而RN的android原生依赖库源码在/node_modules/react-native/ReactAndroid下
如果RN的原生源码有问题,不能升版本或者新版RN也没有解决,但是我们修改源码就可以解决,我们该怎么办呢?有两种方法可以直接依赖RN原生源码编译。

方法1:参考文章https://reactnative.cn/docs/0.42/android-building-from-source/,这个方法可以让你直接依赖/node_modules/react-native/ReactAndroid工程进行编译,从而可以修改源码中的问题

方法2:参考文章http://doslin.com/2017/03/27/android-building-from-source/,实际操作方法不用向文中说的还要自己建一个项目再引入RN的源码,https://github.com/facebook/react-native/tags?after=v0.55.1,
在RN的源码库里直接找到自己想编译的版本下载源码就是一个工程了,直接使用studio编译了,这个项目有两个module:

ReactAndroid : 这个是android原码,解决问题就需要改动这里的源码

RNTester:android:app:这个是一个测试包,编译这个时可能有问题,可以去掉

编译成功就可以在build目录里找到aar包,可以依赖使用了:)

谢谢查阅,欢迎提出问题与建议!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值