Appearance
如何使用 expo-dev-client 构建和分发自定义开发客户端
解决 Expo Go 无法支持自定义原生模块的问题:通过 EAS Build 构建专用的开发客户端(Development Client),让开发者能在真机或模拟器上运行包含自定义原生代码的 App。
为什么需要这个技能
大多数 Expo 项目可以通过 Expo Go 快速启动,但当你需要引入 Expo Go 不内置的第三方原生库、编写自定义原生模块(Local Expo Modules),或者需要配置 Apple Widgets 和 App Clips 时,Expo Go 就不再适用。
expo-dev-client 允许你创建一个“自定义版本的 Expo Go”。它将你的原生依赖打包进一个独立的二进制文件中,同时保留了 Expo 的热更新和开发服务器连接能力,确保你在开发环境下依然能享受快速迭代的体验。
适用场景
- 依赖了需要原生链接(Linking)的第三方 npm 包。
- 需要开发 iOS 桌面小组件、App 扩展或 Android 特定原生功能。
- 需要在物理设备上测试包含原生代码变更的分支版本。
- 需要通过 TestFlight 分发开发版 App 供团队成员内测。
核心工作流
1. 配置 EAS 环境
在 eas.json 中定义开发配置文件,确保 developmentClient 设为 true:
json
{
"build": {
"development": {
"developmentClient": true,
"autoIncrement": true
}
}
}2. 构建与分发
你可以选择在云端构建并直接提交至 TestFlight,或在本地构建:
云端构建并提交 iOS TestFlight:
bash
eas build -p ios --profile development --submit本地构建(需本地安装 Xcode/Android Studio):
bash
# iOS
eas build -p ios --profile development --local
# Android
eas build -p android --profile development --local3. 安装与运行
安装构建产物(.ipa 或 .apk)到设备后,启动 Metro 服务:
bash
npx expo start --dev-client随后在设备上的开发客户端中扫描二维码或输入 URL 即可连接。
下载和安装
下载 expo-dev-client 中文版 Skill ZIP
解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。具体路径参考内附的 USAGE.zh.md。
你可能还需要
暂无推荐