分享

uni-app for Harmony

 大前端之旅 2024-08-22 发布于甘肃

今天带着大家一起 uni-app for Harmony

uni-app

uni-app 是一个使用 Vue.js[1] 开发所有前端应用的框架,开发者编写一套代码,可发布到 HarmonyOS、iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。

uni-app在开发者数量、案例、跨端抹平度、扩展灵活性、性能体验、周边生态、学习成本、开发成本等 8 大关键指标上拥有更强的优势。

功能框架图

img

HarmonyOS

HarmonyOS 是新一代智能终端操作系统。 为不同设备的智能化、互联与协同提供了统一的语言。 设备可实现一碰入网,无屏变有屏,操作可视化,一键直达原厂服务等全新功能。 通过简单而智能的服务,实现设备智能化产业升级。

uni-app for Harmony

接下来我们以 Mac 电脑为例,开始今天的演示。

开发环境要求

  • DevEco-Studio 5.0.3.400 以上[2]
  • 鸿蒙系统版本 API 12 以上 (DevEco-Studio 有内置鸿蒙模拟器)
  • HBuilderX-alpha-4.22 以上[3]

大家先把上面两个工具安装配置好,这是最简单的,我们不过多阐释。操作完上面的步骤,我们就开始后面的内容

配置鸿蒙离线 SDK(鸿蒙项目模板)

  1. 下载 uni-app 鸿蒙离线 SDK template-1.3.7.tgz 下载地址[4]
  2. 解压刚下载的压缩包,将解压后的模板工程在 DevEco-Studio 中打开
  3. 等待 Sync 结束,再启动鸿蒙模拟器 或 连接鸿蒙真机。

启动鸿蒙模拟器

image-20240822123436957

连接鸿蒙真机

打开鸿蒙手机开发者模式,开启 USB 调试,通过 USB 线连接电脑,在此处选择你的手机名称,再启动项目即可,如果提示需要先签名,则进行签名。

配置签名

点击 DevEco-Studio 上方菜单 File - Project Structure...

img

在弹出的窗体中选择 Project - Signing Configs 并打钩 Automatically generate signature,即可自动生成签名

image-20240822084623294

配置 HBuilderX settings.json

打开 HBuilderX,点击上方菜单 - 工具 - 偏好设置,在出现的弹窗右侧窗体新增如下配置

image-20240822123749132
{
"harmony.devTools.path" : "/Applications/DevEco-Studio.app/"
}
image-20240822085926652

上面的报错就用下面的

{
"harmony.devTools.path" : "/Applications/DevEco-Studio.app/Contents/MacOS/devecostudio"
}
image-20240822093219873
image-20240822085956380

接下来就进入真题

配置 uni-app 工程

选择新建项目

image-20240822090402153

HBuilderX 新建一个空白的 uniapp 项目,选 vue3

image-20240822090456245

在 manifest.json 文件中配置鸿蒙离线 SDK 路径

编辑 manifest.json 文件,新增如下配置:

"app-harmony": {
  "projectPath""上一步下载的template-1.3.7.tgz的解压地址/package"
}

我的是

"app-harmony": {
   "projectPath""/Users/jianguo/Desktop/teaching/next/package"
 },
image-20240822090810078

编译 uni-app 到鸿蒙

点击 HBuilderX 上方【运行】菜单,运行到鸿蒙 DevEco Studio

image-20240822090913455

在 DevEco-Studio 重新编译或运行

先等待 HBuilderX 编译完成,然后打开 DevEco-Studio,点击运行,下面这个报错是 HBuilderX settings.json 里的路径有问题,请检查。

image-20240822092157536

然后重新启动

image-20240822124233531

然后就能看到如图所示的效果啦。

image-20240822124312787

使用 uts 调用鸿蒙原生 API

uni-app 在 Android 和 iOS 平台,支持 uts 插件和 App 原生语言插件。目前 App 原生语言插件已经停止维护。uts 插件是主推的扩展方式。

鸿蒙系统有很多原生 API,可以通过 uts 插件方式接入,被 uni-app 调用。大家可以期待一下后面的内容。

参考

  • 什么是 uni-app[5]

  • 开发指导[6]

  • uts 插件介绍[7]

  • uts 插件鸿蒙开发专题[8]

关于坚果派

坚果派社区由小波、狼哥等人创建,团队拥有 12 个华为 HDE 以及 2700+HarmonyOS 开发者,以及若干其他领域的三十余位万粉博主/UP 主运营。

专注于分享的技术包括 HarmonyOS/OpenHarmony,仓颉、ArkUI-X,元服务,服务卡片,AI、BlueOS 操作系统、团队成员聚集在北京,上海,南京,深圳,广州,苏州、长沙、宁夏等地,目前已为华为、vivo、腾讯、亚马逊以及三方技术社区提供各类开发咨询服务 100+。累计粉丝 100+w,孵化开发者 10w+,高校 20+、企业 10+。自研应用 14 款,三方库 38 个,鸿蒙原生应用课程 500+。持续助力鸿蒙生态繁荣发展。

加入坚果派,可以添加 17752170152。

参考资料
[1]

Vue.js: https:///

[2]

DevEco-Studio 5.0.3.400 以上: https://developer.huawei.com/consumer/cn/download/

[3]

HBuilderX-alpha-4.22 以上: https://www./hbuilderx.html

[4]

下载地址: https://web-ext-storage./uni-app/harmony/zip/template-1.3.7.tgz

[5]

什么是uni-app: https://uniapp./

[6]

开发指导: https://zh.uniapp./tutorial/harmony/dev.html

[7]

uts插件介绍: https://doc./uni-app-x/plugin/uts-plugin.html

[8]

uts插件鸿蒙开发专题: https://doc./uni-app-x/plugin/uts-for-harmony.html

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多