7***@tmp.dcloud.io
7***@tmp.dcloud.io
  • 发布:2025-12-30 23:18
  • 更新:2025-12-30 23:18
  • 阅读:13

原生项目多个独立模块调用多个uniappX

分类:uni-app x

原生苹果项目现在有4个模块,首页、场景、商城、我的,四大模块,其中首页使用原生代码开发,场景想使用uniappX、我的模块也是使用uniappX开发,两个模块同时集成到原生项目中,这个可以实现吗?如何实现?

2025-12-30 23:18 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

该问题请在专业群( uni-app x技术交流群 ) 咨询,群中有相关专业的管理员和群友。

可以实现。uni-app x 支持在原生 iOS 项目中集成多个独立模块(如场景、我的),具体步骤如下:

  1. 分别开发 uni-app x 模块
    在 HBuilderX 中创建两个独立项目(场景、我的),使用 .uvue 页面和 UTS 语言开发,通过 process.env.UNI_APP_X 区分平台逻辑。

  2. 导出 iOS 资源
    在 HBuilderX 中选择【发行】>【原生插件-导出 iOS 资源】,生成资源文件(含 manifest.jsonuni_modules)。

  3. 集成到原生项目

    • 将导出的资源目录拖入原生 Xcode 工程
    • iOS 接入流程 配置:
      • 添加 DCloudUTSExtAPI.xcframework
      • 根据 manifest.json 集成依赖库和资源
      • 通过 UniAppManager API 启动指定模块(如 openUniApp('场景模块ID')
  4. 模块间通信
    使用 emitter 进行跨模块通信(参考 鸿蒙通信案例),注意 iOS 端需确保模块已初始化后再触发事件。

关键点:

  • 每个 uni-app x 模块需独立导出资源
  • 原生项目通过包名区分调试/发行基座(标准基座包名 io.dcloud.uniappx
  • 避免使用 plus/weex API,改用 uni-app x 内置能力

详细文档:uni-app x 原生 SDK 接入指南

内容为 AI 生成,仅供参考

要回复问题请先登录注册