鸿蒙原生开发手记:01-元服务开发

田楷
• 阅读 5

简介

元服务是鸿蒙中的一种轻量应用形态,无需下载,直接运行。类似于微信小程序,但与小程序不同的是,元服务更加轻量。

元服务使用原生开发,是系统级提供的,无论从易用性、性能、体验上,都要比小程序好。

创建元服务

使用 DevEco,点击 Create, 左侧模板选择 Atomic Service,右侧模板选择 Empty Ability。根据提示依次点击下一步。

鸿蒙原生开发手记:01-元服务开发

图标生成

图标设计好以后,可以使用 DevEco 自带的生成工具,生成符合元服务规范的图标。在 src/main/resources/media 目录处,右键 New->Image Asset

鸿蒙原生开发手记:01-元服务开发

将会弹出制作对话框,选择设计好的图标,勾选主颜色,则可以生成元服务的图标。

编写页面

打开 src/main/ets/pages/index.ets 页面,写法与应用的 ArkUI 一致,在此处开始编写页面代码。

API限制

需要注意的时,部分 API 在元服务中无法使用,在 HarmonOS 文档里面,打开 API参考,可以在左侧勾选 筛选元服务API集, 就可以看到哪些 API 可能在元服务中使用。

权限限制

元服务中存在更多的权限限制, 在 API 文档中,支持元服务使用的权限会在元服务API处注册。

受限开放权限

深色模式

src/main/resources 目录下,新建一个 dark目录,在 resouces 目录处右键,选择 Resource Directory, 在对话框中左侧选择 Color Mode, 然后点击 OK

鸿蒙原生开发手记:01-元服务开发

在便携代码时,通过行如 $r('app.color.primary_button_color')的方式引用颜色变量,则会在深色模式时,引用 resources/dart/element/color.json 文件中,查找对应的颜色变量。对于其他资产,如图片,也是同样的使用方法。

鸿蒙原生开发手记:01-元服务开发

服务卡片

元服务可以添加服务卡片,详细介绍见《鸿蒙原生开发手记:02-服务卡片开发》

开发测试

在 DevEco 点击运行,设备上可以从负一屏上方的“搜索”按钮,点击进入我的元服务列表,在最近里面可以看到刚安装的元服务。

上架

详细介绍见 《鸿蒙Flutter实战:13-鸿蒙应用打包上架流程》,先添加应用项目,再添加元服务。

注意事项

  1. 导航栏处点击失效问题。 在使用 RelativeContainer 时发现,按钮如果处在顶部与元服务右侧按钮同一行的位置区域时,点击事件不触发,此时不使用 RelativeContainer 组件,改用其他,如 Column

参考资料

点赞
收藏
评论区
推荐文章
实例|APICloud AVM框架开发视频会议APP
APP开发采用的APICloud平台的AVM多端应用开发框架,使用avm.js一个技术栈可同时开发Android&iOS原生App、小程序和iOS轻App,且多端渲染效果统一;全新的App引擎3.0不依赖webView,提供百分百的原生渲染,保障App性能和体验与原生App一致;现有api直接映射兼容小程序接口,延续
Wesley13 Wesley13
3年前
APP-H5- 小程序区别 (转载)
APP、H5、小程序区别●运行环境原生App直接运行在操作系统的单独进行中(安卓中可以开启多进程),而小程序运行环境是微信开发团队基于浏览器内核完全重构的一个内置解析器,针对性做了优化,配合自已定义的开发语言标准,提升了小程序的性能。是一种应用,并非完整的浏览器,只用到一部分H5技术,无法调用window对象和docu
Wesley13 Wesley13
3年前
10分钟上线
_摘要:_ 阿里云函数计算是一个事件驱动的全托管计算服务。通过函数计算,您无需管理服务器等基础设施,只需编写代码并上传。微信小程序是一种不需要下载安装即可使用的应用,它可以在微信内被便捷地获取和传播。当微信小程序遇见serverless,他们会产生奇妙火花,利用函数计算可以快速搭建微信小程序的serverle.点此查看原文:http://clic
田楷 田楷
7小时前
鸿蒙原生开发手记:03-元服务开发全流程(开发元服务,只需要看这一篇文章)
导读本文带来非常详细的元服务开发及上架全流程介绍,包含元服务介绍、创建、服务卡片、签名、开发测试、签名打包、上架审核等,一应俱全。元服务简介元服务是一种新的服务提供方式开发简单、免安装、易于获取和使用相较于小程序,系统原生,丝滑流畅轻量应用程序形态,具备秒
京东云开发者 京东云开发者
10个月前
使用 Taro 开发鸿蒙原生应用 —— 快速上手,鸿蒙应用开发指南
随着鸿蒙系统的不断完善,许多应用厂商都希望将自己的应用移植到鸿蒙平台上。最近,Taro发布了v4.0.0beta.x版本,支持使用Taro快速开发鸿蒙原生应用,也可将现有的小程序转换为鸿蒙原生应用。在《使用Taro开发鸿蒙原生应用》系列文章中,我们已经介绍
田楷 田楷
7小时前
鸿蒙Flutter实战:13-鸿蒙应用打包上架流程
鸿蒙应用打包上架流程创建应用新建项目1.在AppGalleryConnect,我的项目,添加项目。新建APPID1.在AppGalleryConnect,证书、APPID和Profile中。选择所属项目新建应用/元服务在APPID右侧,点击发布,会弹出发布
田楷 田楷
7小时前
鸿蒙原生开发手记:02-服务卡片开发
介绍服务卡片是一直桌面小组件,可以放置在桌面上等位置,一触即达。服务卡片分为静态卡片和动态卡片两类。本文介绍静态卡片。创建回到DevEco,在目录entry右键,点击创建ServiceWidget,选择StaticWidget,点击Next。输入名称,选择