鸿蒙原生开发手记:03-元服务开发全流程(开发元服务,只需要看这一篇文章)

本文涉及的产品
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
应用实时监控服务-应用监控,每月50GB免费额度
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 本文详细介绍元服务的开发及上架全流程,涵盖元服务的特点、创建项目、服务卡片、签名打包、开发测试及上架审核等环节,帮助开发者轻松掌握从零开始开发并发布元服务的全过程。元服务以其轻量、免安装、易于使用等特点,成为未来服务提供的重要形式。

导读

本文带来非常详细的元服务开发及上架全流程介绍,包含元服务介绍、创建、服务卡片、签名、开发测试、签名打包、上架审核等,一应俱全。

元服务简介

image.png

  • 元服务是一种新的服务提供方式
  • 开发简单、免安装、易于获取和使用
  • 相较于小程序,系统原生,丝滑流畅

轻量应用程序形态,具备秒开直达,纯净清爽;服务相伴,恰合时宜;即用即走,账号相随;一体两面,嵌入运行;原生智能,全域搜索;高效开发,生而可信等特征。

image.png

特点

  • 秒开直达:即开即用,无开屏广告
  • 服务相伴:履约提醒,服务闭环
  • 用完即走:退出无弹窗,服务随账号同步
  • 原生智能:小艺智能,精准触达全域搜索:系统搜索框
  • 高效开发:UX 组件集、场景化模板等

创建元服务

创建项目

image.png

1.打开 DevEco
2.New -> Create Project
3.选择 Atmoic Service

第一次会提示我们华为账号,这里点击登录,注意这里登录的是开发者账号,也就是用于上架的账号,如果你是企业,那应该使用公司的开发者账号登录。

image.png

点击登录,会跳转到浏览器,在网页中登录开发者账号,并授权允许。

image.png

网页中显示登录成功,然后我们回到 Deveco 即可。

image.png

如果是第一次使用,项目还没有创建,此时需要点击 Register App ID, 创建一个新项目

image.png

填写元服务名称,需要特别注意的是,名称不能重名,具有识别性,不能为广义归纳类,避免诱导用户,具体的要求见参考资料中的审核指南,否则上架审核会被拒。

image.png

点击下一步,选择所属项目,如果还没有创建项目,输入项目名称,点击确认即可创建

image.png

完成 APPID 注册。

image.png

急需创建元服务,点击完成,这样就生成了样板代码。

image.png

图标生成

image.png

在工程中选中模块或文件右键

New -> Image Asset

制作一个 1024 x 1024 px 的正方形图标,自动生成周围的圆圈

编写页面

image.png

@Entry 表示该自定义组件为入口组件,代表当前是一个页面

@Component 表示自定义组件

@State表示组件中的状态变量,状态变量变化会触发UI刷新

aboutToAppear 为生命周期,组件实例化以后,build() 之前

build() 为UI 描述方法

注意:元服务与鸿蒙原生应用完全相同的技术栈,仅仅是可用 API 集合不同,功能相对简单

编写元服务的注意事项

image.png

不少 API/Kit 无法在元服务中使用,

打开 API参考,可以在左侧勾选,筛选元服务API集

服务卡片

image.png

静态卡片交互组件 FormLink

用于静态卡片内部和提供方应用间的交互

action: router 用于跳转,UIAbility 侧通过 params 接收参数

接收传参

image.png

EntryAbility.ets

onCreate 和 onNewWant 中通过 want?.parameters?.params 接收参数

onCreate: UIAbility实例新建

onNewWant:UIAbility实例由后台回到前台,热启动

onWindowStageCreate:UIAbility 创建完成后,进入前台之前,会创建 WindowStage

开发测试

image.png

  1. 模拟器
  2. Previewer
  3. 真机调试
  4. 热重载

image.png

DevEco Testing

稳定性测试
性能功耗测试
回归测试
基础质量测试
设备投屏

支持平板的元服务,确保进行过兼容性测试,否则影响上架审核

这部分在《鸿蒙Flutter实战:13-鸿蒙应用打包上架流程》有详细说明。

image.png

  1. DevEco 创建 Key Store
  2. 生成 Key 和 CSR
  3. 在 华为AGC 新增证书,上传 CSR,获得 Cer 证书文件
  4. 创建 Profile 文件
  5. 配置签名文件
  6. 打包 (Build/Huild Apps)

image.png

  1. 回到 AGC,完善应用信息,上传图标
  2. 上传软件包
  3. 完全应用介绍,填写隐私政策、用户协议
  4. 如果是APP,需要提前准备好备案和软著(推荐使用电子版权证)
  5. 提交审核

参考资料

  • [元服务]
  • [元服务审核指南]
  • [鸿蒙Flutter实战:13-鸿蒙应用打包上架流程]
目录
相关文章
|
27天前
|
开发者
鸿蒙开发:资讯项目实战之项目初始化搭建
目前来说,我们的资讯项目只是往前迈了很小的一步,仅仅实现了项目创建,步虽小,但概念性的知识很多,这也是这个项目的初衷,让大家不仅仅可以掌握日常的技术开发,也能让大家理解实际的项目开发知识。
鸿蒙开发:资讯项目实战之项目初始化搭建
|
21天前
|
缓存 JavaScript IDE
鸿蒙开发:基于最新API,如何实现组件化运行
手动只是让大家了解切换的原理,在实际开发中,可不推荐手动,下篇文章,我们将通过脚本或者插件,快速实现组件化模块之间的切换,实现独立运行,敬请期待!
鸿蒙开发:基于最新API,如何实现组件化运行
|
27天前
|
SQL 弹性计算 数据库
鸿蒙5开发宝藏案例分享---优化应用时延问题
鸿蒙性能优化指南来了!从UI渲染到数据库操作,6大实战案例助你提升应用流畅度。布局层级优化、数据加载并发、数据库查询提速、相机资源延迟释放、手势识别灵敏调整及转场动画精调,全面覆盖性能痛点。附赠性能自检清单,帮助开发者高效定位问题,让应用运行如飞!来自华为官方文档的精华内容,建议收藏并反复研读,共同探讨更多优化技巧。
|
27天前
|
缓存
鸿蒙5开发宝藏案例分享---Swiper组件性能优化实战
本文分享了鸿蒙系统中Swiper组件的性能优化技巧,包括:1) 使用`LazyForEach`替代`ForEach`实现懒加载,显著降低内存占用;2) 通过`cachedCount`精准控制缓存数量,平衡流畅度与内存消耗;3) 利用`onAnimationStart`在抛滑时提前加载资源,提升构建效率;4) 添加`@Reusable`装饰器复用组件实例,减少创建开销。实际应用后,图库页帧率从45fps提升至58fps,效果显著。适合处理复杂列表或轮播场景,欢迎交流经验!
|
27天前
|
存储 C++ UED
鸿蒙5开发宝藏案例分享---优化应用包体积大小问题
本文分享了鸿蒙应用包体积优化的实用技巧,包括SO库压缩、HSP动态共享包、OHPM依赖冲突解决、按需加载和扫描工具定位优化点等方法。通过具体配置示例和实战经验,如启用`compressNativeLibs`、使用共享资源包、强制统一依赖版本以及动态导入功能模块,帮助开发者显著减少包体积,提升用户体验。文中还提供了图标优化、资源混淆和无用代码剔除等补充建议,助力打造更轻量的鸿蒙应用。
|
27天前
|
数据挖掘 开发者 索引
鸿蒙5开发宝藏案例分享---Grid性能优化案例
本文深入探讨了鸿蒙系统中Grid组件性能优化的实战技巧,针对Grid加载慢、滚动卡顿的问题,提出用GridLayoutOptions替代columnStart/columnEnd的方法。通过预定义不规则项索引,将位置计算复杂度从O(n)降至O(1),大幅提升性能(如scrollToIndex耗时从447ms降至12ms)。文章结合代码示例与Profiler数据分析,总结最佳实践,帮助开发者优化应用流畅度。
|
缓存 开发者 容器
鸿蒙5开发宝藏案例分享---瀑布流优化实战分享
本文基于鸿蒙官方瀑布流优化案例,分享了瀑布流性能优化的实战经验。分析了导致卡顿的三大原因:一次性渲染、动态高度与组件重建,并提供了四大优化方案——懒加载+缓存池、组件复用、动态预加载及固定高度计算。通过实测对比,优化后内存占用降低至98MB,滑动FPS提升至60帧。最后总结避坑指南,帮助开发者解决图片加载、布局嵌套和视频处理等常见问题,实现流畅体验。
|
28天前
|
缓存 JavaScript 前端开发
鸿蒙5开发宝藏案例分享---Web开发优化案例分享
本文深入解读鸿蒙官方文档中的 `ArkWeb` 性能优化技巧,从预启动进程到预渲染,涵盖预下载、预连接、预取POST等八大优化策略。通过代码示例详解如何提升Web页面加载速度,助你打造流畅的HarmonyOS应用体验。内容实用,按需选用,让H5页面快到飞起!
|
28天前
|
数据库
鸿蒙5开发宝藏案例分享---跨线程性能优化指南
本文深入探讨鸿蒙系统跨线程序列化性能优化,借助DevEco Profiler工具定位序列化瓶颈。通过Sendable接口改造、数据瘦身等方法,将5万本书对象的序列化耗时从260ms+降至<8ms,甚至<1ms。总结避坑经验,建议常态化使用Profiler检测,避免传递大对象,提升多线程开发效率。
|
缓存 数据管理 Shell
鸿蒙5开发宝藏案例分享---性能分析简介
鸿蒙开发资源大揭秘!文中整理了HarmonyOS官方提供的100+场景化案例,涵盖性能优化、UI设计、设备适配等全链路内容。重点解析三大神级案例:折叠屏悬停交互、万人列表流畅滚动和服务卡片实时刷新,附带完整代码与避坑指南。通过精准搜索、代码移植和调试技巧,高效利用这些宝藏资源,助你省时省力避开开发陷阱。更有抖音级短视频流畅度优化方案等彩蛋等待探索!