-
一,问题说明原先已实现 UniAPP 项目转鸿蒙,客户提出需要实现类似于微信加载多个小程序并能热更新二、需求分析实现热更新需要能够动态加载小程序资源包,原先的方案是将小程序项目直接打包进鸿蒙 hap中,只支持单个小程序不支持热更新三、解决思路通过查阅UniApp 官方网站,找到小程序动态加载方案及sdk,根据客户需求进行开发适配实现需求四、解决方案可通过 DCloud 平台配置小程序热更新资源包,或将 wgt 资源包上传自己的服务器,app下载资源包更新(一).开发环境DevEco-Studio 5.0.3.800 以上鸿蒙系统版本 API 12 以上 (DevEco-Studio有内置鸿蒙模拟器)HBuilderX-4.27+ 下载uni小程序 SDK不支持x86模拟器(二).配置uni小程序SDK1.修改鸿蒙项目根目录文件 oh-package.json5 的依赖 "@dcloudio/uni-app-runtime": "版本号" 2.点击右上角 Sync Now,并等待 Sync 结束(三).通过wgt包导入小程序应用资源选中您的 uni-app 项目,右键->发行->App-制作应用wgt包 项目编译完成后会在控制台,输出wgt包的路径,点击路径可以直接打开wgt所在目录 如图,__UNI__6275E02.wgt 就是应用资源包,(__UNI__6275E02 为小程序的 appid)如果提示导出失败,请删除项目根目录 manifest.json 源码里的 app-harmony 属性 将生成的wgt包拷贝到 entry/src/main/resources/resfile 目录下,如下图所示 再通过 releaseWgtToRunPath 函数释放 wgt 包到运行目录,最后通过 openUniMP 函数打开小程序,代码如下import { openUniMP,isExistsUniMP, releaseWgtToRunPath } from '@dcloudio/uni-app-runtime';@Entry@Componentstruct Index { @State message: string = 'Hello World'; build() { RelativeContainer() { Text(this.message) .id('HelloWorld') .fontSize(50) .fontWeight(FontWeight.Bold) .alignRules({ center: { anchor: '__container__', align: VerticalAlign.Center }, middle: { anchor: '__container__', align: HorizontalAlign.Center } }) .onClick(async ()=>{ const mpId = "__UNI__6275E02" await new Promise<void>((resolve, reject) => { try { // 判断应用是否已释放到运行目录 let isExists = isExistsUniMP(mpId) console.log("isExists:"+isExists) // 拼接wgt包路径 let path = getContext().resourceDir + "/"+mpId+".wgt" // 释放 wgt 包到运行目录 releaseWgtToRunPath(mpId,path, (code:number, data: object)=>{ console.log(JSON.stringify({code,data})) resolve() }) } catch(err){ reject(err) } }) // 启动小程序 const mp = openUniMP(mpId) mp.on('close',()=>{ console.log('UniMP-close') }) mp.on('show',()=>{ console.log('UniMP-show') }) mp.on('hide',()=>{ console.log('UniMP-hide') }) }) } .height('100%') .width('100%') }}
推荐直播
-
华为云码道-玩转OpenClaw,在线养虾2026/03/11 周三 19:00-21:00
刘昱,华为云高级工程师/谈心,华为云技术专家/李海仑,上海圭卓智能科技有限公司CEO
OpenClaw 火爆开发者圈,华为云码道最新推出 Skill ——开发者只需输入一句口令,即可部署一个功能完整的「小龙虾」智能体。直播带你玩转华为云码道,玩转OpenClaw
回顾中 -
华为云码道-AI时代应用开发利器2026/03/18 周三 19:00-20:00
童得力,华为云开发者生态运营总监/姚圣伟,华为云HCDE开发者专家
本次直播由华为专家带你实战应用开发,看华为云码道(CodeArts)代码智能体如何在AI时代让你的创意应用快速落地。更有华为云HCDE开发者专家带你用码道玩转JiuwenClaw,让小艺成为你的AI助理。
回顾中 -
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中
热门标签