You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将React Native项目导出为Android端.aar与iOS端.framework?

React Native项目导出AAR(Android)与Framework(iOS)全流程教程

以下步骤基于React Native 0.60+版本操作,更低版本需额外适配autolinking相关逻辑。

前置准备

  • 本地RN开发环境正常可用,Android SDK、Xcode配置符合对应RN版本的要求
  • 现有RN项目功能在debug模式下验证正常,无运行报错

一、Android端生成AAR包

  • 第一步:用Android Studio打开RN项目根目录下的android文件夹,新建Android Library模块,命名可自定义,比如rn_export_lib,模块的minSdkVersion需和原有RN项目app模块的minSdkVersion保持一致
  • 第二步:配置新模块的依赖,在模块根目录的build.gradle文件中添加React Native相关依赖,配置和原有app模块保持一致即可
  • 第三步:生成RN打包产物,在RN项目根目录执行命令:
npx react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/rn_export_lib/src/main/assets/index.android.bundle --assets-dest android/rn_export_lib/src/main/res/

注意:如果模块的main目录下没有assets文件夹,需要先手动创建

  • 第四步:执行AAR打包命令,在android目录下执行:
./gradlew rn_export_lib:assembleRelease
  • 第五步:获取产物,打包完成后AAR文件会生成在rn_export_lib/build/outputs/aar/rn_export_lib-release.aar路径下

二、iOS端生成Framework包

  • 第一步:用Xcode打开RN项目根目录下的ios文件夹,新建Cocoa Touch Framework模块,命名可自定义,比如RNExportFramework,模块的最低支持iOS版本需和原有RN项目保持一致
  • 第二步:配置Pod依赖,在项目的Podfile中添加该Framework模块的React相关依赖关联,完成后在ios目录执行pod install更新依赖
  • 第三步:生成RN打包产物,在RN项目根目录执行命令:
npx react-native bundle --platform ios --dev false --entry-file index.js --bundle-output ios/RNExportFramework/main.jsbundle --assets-dest ios/RNExportFramework/
  • 第四步:将生成的main.jsbundle和对应资源文件夹拖入Xcode的Framework模块目录,勾选「Copy items if needed」,target选择对应Framework模块
  • 第五步:配置Framework编译参数:在Build Settings中将「Build Libraries for Distribution」设为YES,「Mach-O Type」按需选择静态库/动态库
  • 第六步:编译生成Framework,可分别选择真机、模拟器架构编译后用lipo命令合并为通用架构,也可直接执行xcodebuild命令批量编译,最终产物为后缀为.framework的文件夹

注意事项

  • 若RN项目依赖第三方原生模块,需要将对应原生模块的代码/依赖同步打包到产物中,或告知接入方同步添加对应依赖
  • 产物的RN版本需和接入方原生项目集成的RN版本完全一致,避免出现兼容性报错
  • 正式打包前可先打dev版本产物验证功能,确认正常后再打release版本

内容的提问来源于stack exchange,提问作者acul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 13:45:03