Expo Go 项目迁移到 Development Build 指南
要把一个 基于 Expo Go 的项目迁移到 Development Build(以支持自定义原生模块),整个过程可以简化为 4 步,官方文档和社区实践都一致:
✅ 迁移步骤
1. 安装 expo-dev-client
npx expo install expo-dev-client
这个库会把 Expo Go 里的调试菜单、热重载、OTA 测试等功能“搬进”你自己的 App 里 。
2. 生成原生工程(Prebuild)
首次迁移时,让 Expo 帮你生成 ios/
和 android/
目录:
-
本地有 macOS + Xcode / Android Studio:
npx expo prebuild --clean # 生成干净的 ios 和 android 目录
-
没有 mac 或不想配环境:直接用 EAS Build(下一步)即可,EAS 会自动做 prebuild 。
⚠️ 以后如果你 手动改过
ios/
或android/
里的文件,不要再跑prebuild --clean
,否则改动会被覆盖。推荐用 Config Plugins 来“可重复”地改原生配置 。
3. 构建你的 Development Build
两条路任选其一:
-
本地构建(需完整原生环境)
npx expo run:ios # 或 run:android
首次会自动装依赖、编译并把 App 装到模拟器/真机上 。
-
云端构建(EAS Build,零环境要求)
- 配好
eas.json
(npx eas build:configure
会自动生成) - 构建开发版:
eas build --profile development --platform ios # 或 android
- 下载安装生成的
.ipa
/.apk
,替代 Expo Go 。
- 配好
4. 启动开发服务器
以后不再用 Expo Go 扫码,而是直接打开你刚装的 Development Build;
然后用熟悉的命令启动 Metro:
npx expo start --dev-client
终端会提示“Using development build”,二维码也只会被你的专属 App 识别 。
📌 后续新增原生模块怎么做?
- 安装第三方库:
npx expo install some-lib
- 如果库需要额外原生配置 → 写/找对应的 Config Plugin,然后
npx expo prebuild --clean # 重新生成原生工程eas build --profile development ...
即可把改动打进新的 Development Build 。
一句话总结:
装
expo-dev-client
→ 跑一次prebuild
→ 用eas build
或本地run:ios|android
打出专属开发 App → 以后expo start --dev-client
即可,原生模块随意加。