跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像AI 生图工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
JavaScript大前端

UniApp 打包鸿蒙应用流程与系统权限配置

UniApp 打包鸿蒙应用需结合 HBuilderX 与 DevEco Studio。首先通过 HBuilderX 运行到鸿蒙端生成工程,配置调试证书及包名。随后在 DevEco Studio 导入工程,安装插件并构建。关键步骤是在 module.json5 中声明 UniApp API 所需的鸿蒙系统权限。发布前需在华为开发者联盟申请发布证书、创建 APPID 及应用,配置签名 Profile 后编译 Release 包。

追风少年发布于 2025/11/13更新于 2026/7/2638 浏览

一、前言:为什么选择 UniApp 打包鸿蒙应用?

随着鸿蒙生态的快速发展,越来越多开发者希望将现有跨平台项目快速接入鸿蒙系统。而 UniApp 作为国内领先的跨平台开发框架,凭借其'一次开发,多端发布'的特性,成为接入鸿蒙(HarmonyOS)的理想选择。

本文将基于 Vue3 + UniApp 的项目架构,详细介绍如何通过 HBuilderX + DevEco Studio 联合打包,将项目发布为标准的鸿蒙应用(.hap 或 .app 包),并重点讲解如何为 UniApp 中使用的 API 添加对应的鸿蒙系统权限(ohos.permission),确保功能正常运行。

二、开发环境准备

1. 基础工具 建议确保 HBuilderX 和 DevEco Studio 的版本均为最新。

  • HBuilderX
  • DevEco Studio
  • Node.js(16+)

2. 项目基础 使用 Vue3 语法开发的 UniApp 项目(底层必须使用 Vue3 的语法,Vue2 不支持)

三、UniApp 项目打包为鸿蒙工程

步骤 1:在 HBuilderX 中生成鸿蒙工程 打开你的 UniApp 项目,点击菜单栏:运行 > 运行到手机或模拟器(N)> 运行到鸿蒙(H)。

在这里插入图片描述

记得连接鸿蒙设备,并且配置调试证书(调试证书是支持自动生成的,开发阶段可以使用,打包发布时需要生成上线证书)。

在这里插入图片描述

点击'自动申请调试证书'即可,调试证书会自动生成,注意应用包名,这个包名后续在华为开发者联盟 -AppGallery Connect 做应用分发的时候会用到,请认真命名!!!

在这里插入图片描述

点击'保存'后运行,HBuilderX 会生成一个标准的鸿蒙工程目录(通常为 app-harmony)。

在这里插入图片描述

注意:生成的工程是标准的 HarmonyOS 项目结构,包含 entry/、module.json5、resources 等。

四、使用 DevEco Studio 导入并构建鸿蒙应用

步骤 1:导入工程 打开 DevEco Studio,选择'Open an existing HarmonyOS project',选择 HBuilderX 生成的鸿蒙工程目录。

在这里插入图片描述

DevEco Studio 汉化(安装汉化插件 Chinese(simplified)),打开项目右上角的设置图标,找到插件(Plugins),点击打开。

在这里插入图片描述

在市场搜索 Chinese(simplified) 安装后重启即可。

在这里插入图片描述

五、关键:为 UniApp API 添加鸿蒙系统权限

UniApp 在鸿蒙端运行时,部分 API 需要对应的鸿蒙权限(ohos.permission)才能正常使用。这些权限需在 module.json5 文件中声明。 可以参考 uniapp 提供的鸿蒙 APP 专题 权限配置指南。

在这里插入图片描述

在这里插入图片描述

六、做 APP 应用分发

  1. 首先打开 华为开发者联盟 点击 AppGallery Connect,进行应用分发。如果是企业使用,建议先进行企业认证。

在这里插入图片描述

点击'证书、APP ID 和 Profile'(旧版界面可切换成新版,新版界面与旧版界面的功能模块名称是一致的)。

在这里插入图片描述

查看是否已有'调试证书',可以生成一个'发布证书'进行软件上架发布。

在这里插入图片描述

点击'新增证书',证书类型选择'发布证书',证书名称最好规范一些。

在这里插入图片描述

这里还需要 csr 文件,回到 DevEcoStudio,在主菜单栏单击 Build > Generate Key and CSR。

在这里插入图片描述

没有密钥库文件,单击 New 进行创建。注意选择好'.p12'文件生成后存放的位置,后续还需要使用(可以创建一个 harmony-configs 的文件,后续所有的证书文件都可以生成到这个文件夹下)。

在这里插入图片描述

在这里插入图片描述

选择已经生成好的文件,填写密码和别名,点击 next。

在这里插入图片描述

接着选择.csr 文件生的位置,及填写 csr 文件生成之后的名称。点击 Finish 即可。

在这里插入图片描述

在这里插入图片描述

注意:所有生成的文件都统一放在一个文件夹下(创建的文件夹名称为'harmony-configs')。

csr 文件选择在 harmony-configs 文件夹创建的 csr 文件夹里,点击 finish 和确定。这样我们的 csr 文件搞定了在上述界面可以选取刚刚的 csr,点击提交即可。

在这里插入图片描述

下载后的 cer 文件,放在 harmony-configs 文件夹下的新增文件夹调试。

在这里插入图片描述

  1. 配置 APPID,点击新增。

在这里插入图片描述

填写应用名称和应用包名后点击下一步。

在这里插入图片描述

选择所属项目和需要的开发能力,点击确定。

在这里插入图片描述

这就创建了 APPID。

在这里插入图片描述

  1. 新增应用,填写名称、选择设备类型和 UDID。

在这里插入图片描述

UDID 获取方法:

  1. 在设备上打开 USB 调试权限。

  2. 使用 PC 连接设备后,打开命令行工具,进入 HDC 目录(一般为:DevEco Studio 安装目录/sdk/default/openharmony/toolchains),输入 hdc shell bm get --udid 命令,获取设备的 UDID。

  3. 添加 profile,选择应用和 profile 名称,类型为调试等信息,点击右上角'添加',调试 Profile 申请成功,'Profile'页面展示 Profile 信息。点击'下载',将生成的 p7b 文件保存至 harmony-configs 文件夹,供后续签名使用。

在这里插入图片描述

  1. 文件齐全后就可以回到下列界面,选择'项目结构'。

在这里插入图片描述

点击'签名配置'后并点击新增,增加一个 release 的配置用于发版。

在这里插入图片描述

去掉自动生成签名的勾选,并且从 harmony-configs 文件夹中选取到对应的文件,填入进去点击'Apply'即可。

在这里插入图片描述

点击'Product',把构建模式改为'release'后点击'Apply'。

在这里插入图片描述

  1. 点击'构建' > 选择编译成 Hap 或 APP 即可。

在这里插入图片描述

最后构建出来的包都会在这里。

在这里插入图片描述

目录

  1. 一、前言:为什么选择 UniApp 打包鸿蒙应用?
  2. 二、开发环境准备
  3. 三、UniApp 项目打包为鸿蒙工程
  4. 四、使用 DevEco Studio 导入并构建鸿蒙应用
  5. 五、关键:为 UniApp API 添加鸿蒙系统权限
  6. 六、做 APP 应用分发
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • STL 中 set 与 map 的实现原理及高频算法题实战
  • VS Code 远程配置 GitHub Copilot 无法使用的排查与避坑
  • Qwen2.5-32B-Instruct 本地部署:快速搭建 AI 写作助手
  • OpenDroneMap 无人机图像处理与地图生成指南
  • Python 实现 Markdown 转 Word(docx)文档转换方案
  • Python 爬虫开发实战:从 Requests 到 Scrapy 分布式部署
  • WSL2 下 Webots 控制器自动获取错误 IP 地址的排查与修复
  • ComfyUI 是什么?节点式 AI 绘画工作流详解
  • IDEA 中 AI 编程插件实测对比:Copilot、灵码与 TRAE
  • PyTorch 实战:基于文本引导的图像生成技术与 Stable Diffusion 实践
  • 低代码可视化系统设计器:_data 与_class 属性用法详解
  • 开源医疗大模型排行榜:健康领域大模型基准测试
  • Flutter 组件 tavily_dart 在 OpenHarmony 上的进阶适配与聚合搜索方案
  • 六款免费 AI 写作工具实测:网文创作与去 AI 味方案
  • Electron 桌面应用打包实战:builder 与 packager 深度解析
  • 英伟达 GTC 2026:AI 智能体时代开启,Rubin 架构与新推理芯片发布
  • Agent 入门前置:大模型基础(开发向)
  • GitHub Copilot Pro 学生免费认证与 VS Code 实战配置
  • 机器人路径规划:D* Lite算法应对动态障碍物及Python实现
  • Ghostty + Yazi + Lazygit 构建现代化终端开发环境

相关免费在线工具

  • Keycode 信息

    查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online

  • Escape 与 Native 编解码

    JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online

  • JavaScript / HTML 格式化

    使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online

  • JavaScript 压缩与混淆

    Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online