用途:Expo 是开源框架,用于构建在 Android、iOS 和 Web 上原生运行的应用,基于 React Native,提供一套精选工具与库(SDK)简化开发生命周期。适合现代 React Native 开发、云端构建自动化、文件式路由、OTA 更新等场景。
主要能力:EAS Build 可在云端编译原生应用包,无需本地安装 Xcode 或 Android Studio;Expo Router 提供基于文件的路由与深度链接;prebuild 通过 app.json 配置插件生成 ios/ 与 android/ 目录,避免手动修改原生代码;支持 OTA 更新,无需应用商店审核即可推送 JavaScript 修复;提供 SecureStore、Haptics 等跨平台原生 API。
使用方式:创建应用可运行 npx create-expo-app@latest my-safe-app,进入目录后 npx expo start。路由在 app/ 目录下按文件结构定义,如 app/_layout.tsx 与 app/index.tsx。生成原生目录使用 npx expo prebuild --clean。动态路由示例见 app/user/[id].tsx,通过 useLocalSearchParams 获取参数。
限制与注意:不要在 app.json 中硬编码敏感密钥,应使用 EAS Secrets 或运行时环境变量;避免使用旧版 expo publish,改用 EAS Update;不要绕过 Apple 隐私清单。常见问题包括原生模块为 null 需重建开发构建(npx expo run:ios),EAS 构建失败可查看 expo.dev 日志并运行 npx expo-doctor,Expo Go 崩溃可更新或改用开发构建。具体收费与价格暂未提供。