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

无需重写,如何将旧Expo应用转为React Native CLI或脱离Expo Go运行?

旧版Expo(SDK 37)运行与转React Native CLI解决方案

一、不依赖Expo Go运行项目的途径

因为Expo Go不再支持SDK 37,最直接的方式是构建独立原生包运行:

  • 先安装对应SDK 37的Expo CLI版本:npm install -g expo-cli@4.12.10(SDK 37适配的CLI版本为4.x系列,此版本为稳定兼容版)
  • 确认项目根目录的package.json中,expo版本锁定为37.x,若版本不符,执行npm install expo@37.0.0调整
  • 运行构建命令生成独立包:
    • Android:expo build:android,构建完成后下载APK文件,直接安装到真机或模拟器
    • iOS:expo build:ios,构建完成后可通过TestFlight或Xcode安装到设备

二、无需重写转换为React Native CLI的方法

通过Expo的eject命令将项目转为裸工作流(Bare Workflow),保留原有JS/TS代码,生成原生工程目录:

  1. 备份项目代码,避免操作失误导致文件丢失
  2. 安装适配SDK 37的Expo CLI(同上步骤)
  3. 在项目根目录执行:expo eject,按照提示选择"React Native CLI"模式,生成android和ios原生文件夹
  4. 调整依赖与已弃用函数:
    • 锁定React Native版本为0.63.x(SDK 37对应的RN版本),执行npm install react-native@0.63.4
    • 替换Expo已弃用的API:例如Expo.Constants替换为expo-constants库,Expo.Camera替换为社区维护的react-native-camera等,优先使用与SDK 37兼容的库版本
  5. 运行项目:
    • Android:react-native run-android
    • iOS:先进入ios目录执行pod install,再运行react-native run-ios

注意:eject后项目将脱离Expo Managed Workflow,后续原生端维护需遵循React Native CLI的规范,已弃用函数需逐步替换以保证长期稳定性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 22:00:59