SuperAPI AI 工具集

expo-inline-native-modules-workflow

办公与效率

查看项目

更新于 10-15 21:49

技能介绍

用途:指导跨越 TypeScript/JavaScript 到应用专属 Swift 或 Kotlin 原生代码的 Expo 应用改动,让内联模块保持窄小且项目内局部。适用于任务提到 Expo SDK 56 及以后内联模块、在 Expo 应用树中添加自定义 Swift/Kotlin、使用 expo-type-information 或为 Swift Expo 模块生成 TypeScript 接口、涉及 requireNativeModule、requireNativeView、Expo Modules API 原生视图,或把原生模块从独立包样板迁入应用树时。独立可复用模块、包发布与模块模板应走更广的 Expo Modules 工作流;Swift API 设计、Apple 框架行为、Xcode 校验、模拟器、签名、能力、权限、App Store 行为等交由 Apple Dev Skills。

主要能力与流程:内联模块与类型生成属实验性,可能快速变化,编辑前须刷新官方 Expo 文档。编辑前检查项目:package.json、锁文件、包管理器约定,Expo 配置,已安装的 expo/react/react-native 版本,是否存在 ios/ 与 android/,应用属 Expo Go、CNG/prebuild、签入原生目录、开发构建还是裸/棕地流程,eas.json、tsconfig.json 及 TypeScript 检查脚本,已有 Swift、Kotlin、Expo Modules API、config plugin、生成接口与原生视图文件。配置发现时仅当 SDK 与工作流门槛通过才添加或更新 expo.experiments.inlineModules,watchedDirectories 设为具体源码目录如 app 或 src,避免整项目根、父目录、重复嵌套及特殊字符路径。原生代码保持文件名与模块名一致、模块名唯一、单一 JS 面向职责;iOS 验证不代表 Android 行为,反之亦然。类型生成仅在 SDK 56+ 使用,macOS 上先确认 SourceKitten 可用,Swift 内联模块用 inline-modules-interface,Module.generated.ts 视为再生成产物,Module.tsx 为可编辑包装层,不要手改生成输出。

限制与风险:包安装/同步、npx expo prebuild、npx expo prebuild --clean、npx expo run:ios、npx expo run:android、EAS 构建均属高副作用操作,需先明确影响并获授权再运行。验证按项目形态选择:依赖变化才装包,有则运行仓库 TypeScript 检查,配置或依赖变化后跑 npx expo-doctor,配置需同步原生项目时跑 npx expo prebuild,本地原生构建验证才用 run:ios/run:android,自定义原生代码需运行时验证用开发构建,仅在用户要求云端、设备或商店验证时用 EAS。所有验证串行执行,不要并发。具体收费、价格、平台可用性等资料暂未提供。