官网文档传送口
目录
一、鸿蒙OS系统定义:
二、原子化服务开发历程:
1.什么是原子化服务:
2.原子化服务特征:
随处可及:
服务直达:
跨设备:
3.服务中心与原子化服务:
4.原子化服务的流转:
5.流转触发的方式:
6.流转的技术方案:
7.原子化服务分享:
8.原子化服务使用场景:
三、服务卡片:
概述:
运作机制:
卡片开发说明:
1.开发接口说明:
2.Java卡片与JS卡片区别:
四、Harmony上手开发流程:
开发准备:
第一步:注册华为开发者账号:
第二步:安装开发工具:
第三步:DevEco Studio常见设置:
第四步:项目结构介绍:
HarmonyOS 是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS 提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备。
HarmonyOS除支持传统方式的需要安装的应用外,还支持提供特定功能的免安装的应用(即原子化服务),供用户在合适的场景、合适的设备上便捷使用。
原子化服务就是提供特定功能的免安装的应用!!!
原子化服务是HarmonyOS提供的一种面向未来的服务提供方式,是有独立入口的(用户可通过点击方式直接触发)、免安装的(无需显式安装,由系统程序框架后台安装后即可使用)、可为用户提供一个或多个便捷服务的用户应用程序形态。
原子化服务基于HarmonyOS API开发,支持运行在1+8+N设备上,供用户在合适的场景、合适的设备上便捷使用。原子化服务相对于传统方式的需要安装的应用形态更加轻量,同时提供更丰富的入口、更精准的分发。
原子化服务由1个或多个HAP包组成,1个HAP包对应1个FA或1个PA。每个FA或PA均可独立运行,完成1个特定功能;1个或多个功能(对应FA或PA)完成1个特定的便捷服务。
HarmonyOS服务中心:为用户提供统一的原子化服务查看、搜索、收藏和管理功能。
原子化服务在服务中心以服务卡片的形式展示,用户可将服务中心的服务卡片添加到桌面中快捷访问。
服务中心入口:以手机为例,通过屏幕左下角或右下角向侧上方滑动进入服务中心。
常用服务:"常用服务"涵盖用户常用的本地服务和云端推送的服务,为您提供贴心便捷的服务体验。
我的收藏:“我的收藏”中收录您所订阅的服务卡片;通过长按卡片可将服务添加到桌面、取消收藏。
服务发现:您还可以在“发现”版块中查找和浏览所有的服务卡片。服务以卡片(卡片由图标、名称、描述、快照组成)的形式向用户展示。轻点卡片,可以选择将卡片添加到收藏或添加到桌面,随时随地查看信息获取服务。
流转在HarmonyOS中泛指涉及多端的分布式操作。
流转能力打破设备界限,多设备联动,使用户应用程序可分可合、可流转,实现如邮件跨设备编辑、多设备协同健身、多屏游戏等分布式业务。
用户触发流转有2种方式:系统推荐流转和用户手动流转。
流转有2种技术方案来满足不同的业务场景:
指在A端运行的用户应用程序,迁移到B端上并从迁移时刻A端状态继续运行,然后A端用户应用程序退出。
指多端上的不同FA/PA同时运行、或者接替运行实现完整的业务;或者,多端上的相同FA/PA同时运行实现完整的业务。
通过分享的方式,将原子化服务分享到其它设备上,用户确认后可直接免安装启动服务。
华为分享:用户可在原子化服务内选择分享,打开“华为分享”开关后,将原子化服务分享给附近同样打开了“华为分享”开关的好友,好友点击确认后直接启动服务。
服务卡片(以下简称“卡片”)是FA的一种界面展示形式,将FA的重要信息或操作前置到卡片,以达到服务直达,减少体验层级的目的。
卡片常用于嵌入到其他应用(当前只支持系统应用)中作为其界面的一部分显示,并支持拉起页面,发送消息等基础的交互功能。卡片使用方负责显示卡片。
HarmonyOS中的服务卡片为卡片提供方开发者提供以下接口能力:
类名 | 接口名 | 描述 |
---|---|---|
Ability | ProviderFormInfo onCreateForm(Intent intent) | 卡片提供方接收创建卡片通知接口。 |
void onUpdateForm(long formId) | 卡片提供方接收更新卡片通知接口。 | |
void onDeleteForm(long formId) | 卡片提供方接收删除卡片通知接口。 | |
void onTriggerFormEvent(long formId, String message) | 卡片提供方处理卡片事件接口(JS卡片使用)。 | |
boolean updateForm(long formId, ComponentProvider component) | 卡片提供方主动更新卡片(Java卡片使用)。 | |
boolean updateForm(long formId, FormBindingData formBindingData) | 卡片提供方主动更新卡片(JS卡片使用),仅更新formBindingData中携带的信息,卡片中其余信息保持不变。 | |
void onCastTempForm(long formId) | 卡片提供方接收临时卡片转常态卡片通知。 | |
void onEventNotify(Map<Long, Integer> formEvents) | 卡片提供方接收到事件通知,其中Ability.FORM_VISIBLE表示卡片可见通知, Ability.FORM_INVISIBLE表示卡片不可见通知。 | |
FormState onAcquireFormState(Intent intent) | 卡片提供方接收查询卡片状态通知接口。默认返回卡片初始状态。 | |
ProviderFormInfo | ProviderFormInfo(int resId, Context context) | Java卡片返回对象构造函数。 |
ProviderFormInfo() | JS卡片返回对象构造函数。 | |
void mergeActions(ComponentProvider componentProviderActions) | 在提供方侧调用该接口,将开发者在ComponentProvider中设置的actions配置数据合并到当前对象中。 | |
void setJsBindingData(FormBindingData data) | 设置JS卡片的内容信息(JS卡片使用)。 |
其中,onEventNotify仅系统应用才会回调,其他接口回调时机如下:
场景 | Java卡片 | JS卡片 | 支持的版本 |
---|---|---|---|
实时刷新(类似时钟) | Java使用ComponentProvider做实时刷新代价比较大 | JS可以做到端侧刷新,但是需要定制化组件 | HarmonyOS 2.0及以上 |
开发方式 | Java UI在卡片提供方需要同时对数据和组件进行处理,生成ComponentProvider远端渲染 | JS卡片在使用方加载渲染,提供方只要处理数据、组件和逻辑分离 | HarmonyOS 2.0及以上 |
组件支持 | Text、Image、DirectionalLayout、PositionLayout、DependentLayout | div、list、list-item、swiper、 stack、image、text、span、progress、button(定制:chart 、clock、calendar) | HarmonyOS 2.0及以上 |
卡片内动效 | 不支持 | 暂不开放 | HarmonyOS 2.0及以上 |
阴影模糊 | 不支持 | 支持 | HarmonyOS 2.0及以上 |
动态适应布局 | 不支持 | 支持 | HarmonyOS 2.0及以上 |
自定义卡片跳转页面 | 不支持 | 支持 | HarmonyOS 2.0及以上 |
总结:
官网:/
进行账号注册:
实名认证:
下载工具:
传送口:
安装:
下载完成后进行解压,安装(下一步下一步就可以,注意安装路径不要有中文!!!):
等待安装完成!!!
检查SDK是否安装成功:
修改主题:
设置字体大小:
取消注释斜体,修改注释颜色:
自动导包:
提示忽略大小写:
修改自动提示快捷键:
DevEco Stusio项目结构:
项目管理工具gradle
【本文正在参与"有奖征文|HarmoneyOS征文大赛"活动】
传送口:
本文发布于:2024-02-02 14:12:22,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170685433944331.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |