系统及应用场景介绍
系统及应用场景介绍
HarmonyOS 三大特征: “硬件互助,资源共享”、“一次开发,多端部署”、“统一 OS,弹性部署”
HarmonyOS Connect(中文名称:鸿蒙智联)是华为消费者业务面向生态智能硬件的全新技术品牌。
HarmonyOS Connect来自 Works With HUAWEI HiLink 品牌和 Powered by HarmonyOS 品牌的融合升级,旨在提
供统一的生态产品开发、销售与运营服务。
在各项服务功能上,HarmonyOS Connect承接了Works With HUAWEI HiLink的碰一碰、
快速连接的功能体验,而在连接技术上,HarmonyOS Connect 使用了
Powered by HarmonyOS 的分布式软总线连接能力。
HarmonyOS Connect 智能硬件具备 4 项主要特点:
1、不同设备,同一语言。
2、硬件互助,形成超级终端。
3、服务跨端流转,脱离单设备依赖。
4、微内核架构,重塑终端设备可信安全。
HarmonyOS Connect 服务包为合作伙伴提供设备开发、原子化服务开发、设备全生命周
期运营运维等一站式智能化解决方案,由基础服务、增强服务、HarmonyOS Connect 云等组成。
HarmonyOS Connect 服务包的基础服务主要有四方面能力。
极简连接。
万能卡片作为设备与服务的载体,支持多设备运行,服务免安装,一步直达。
极简交互实现全场景接入,支持碰一碰、靠近发现、扫一扫等多种用户场景化交互方式拉
起服务卡片,以及通过服务中心、控制中心、智慧生活和负一屏中的设备卡片,完成设备状态
查询、设备控制和更多服务。
硬件互动建立多设备间视频、音频、信息服务流转,组合不同设备的软硬件能力,融合成
“超级终端”,为用户打造全场景智慧生活体验。
智慧场景联动是华为面向消费领域的智能软硬件开放生态平台,通过聚合设备能力和应用
服务能力,赋能开发者,进行一站式场景开发和运营,提升消费者智慧全场景的生活体验。
小艺智慧助手是用户与设备的主要交互入口,支持基于用户、设备、服务建模的主动服务等智能化体验。
小艺智慧助手平台的语音功能支持语音唤醒、多轮对话、协同唤醒,提供全面语音服务。
小艺智慧助手主要有六大使用场景:出行、家居、健康、教育、办公、娱乐。
小艺智慧助手目前已有大量的应用,典型的应用案例包括家居智能中控、随身看&智慧盒子、学习台灯。
OpenHarmony 生态组成
OpenHarmony 是由开放原子开源基金会孵化及运营的开源项目,也是 HarmonyOS 和
HarmonyOS Connect 共同的技术底座。囊括了 HarmonyOS 的核心能力:分布式软总线、分
布式数据管理、分布式任务管理、分布式设备虚拟化等各项能力。
OpenHarmony 支持如下几种系统类型:
1、轻量系统面向 MCU 类处理器的设备,此类设备硬件资源极其有限,支持最小内存 128KiB
2、小型系统面向应用处理器设备,支持最小内存 1MiB
3、标准系统面向应用处理器设备,支持最小内存 128MiB
方舟开发框架
方舟开发框架(ArkUI),是一套 UI 开发框架,为开发者提供应用 UI 开发时所必须的能力。
组件:组件是界面搭建与显示的最小单位。
页面:page 页面是方舟开发框架最小的调度分割单位。
主要能力:UI组件、布局、动画、绘制、交互事件、平台API通道
开发范式:
1. 是基于 JS 扩展的类 Web 开发范式(简称“类 Web 开发范式”)
1)类 Web 开发范式,采用经典的 HML、CSS、JavaScript 三段式开发方式。
2. 基于 TS 扩展的声明式开发范式(简称“声明式开发范式”)
1)声明式开发范式,采用 TS 语言并进行声明式 UI 语法扩展,从组件、动效和状态管理三个维度提供了 UI 绘制能力。
JS UI 概述
基础能力
类 Web 范式编程/跨设备/高性能
整体架构:包括应用层(Application)、前端框架层(Framework)、引擎层(Engine)和平台适配层(Porting Layer)。
JS UI 自定义组件
自定义组件通过 element 引入到宿主页面,element 是指用于创建元素对象的默认构造函数。
TS UI 概述
基础能力
开箱即用的组件
丰富的动效接口
状态与数据管理
系统能力接口
整体架构:声明式 UI 前端/语言运行时/声明式 UI 后端引擎/渲染引擎/平台适配层
TS UI 自定义组件
特点:可组合/可重用/生命周期/数据驱动更新
Build 函数
自定义组件必须定义 build 方法,build 函数满足 Builder 构造器接口定义,用于定义组件
的声明式 UI 描述。
自定义组件成员变量初始化 本地初始化/在构造组件时通过构造参数初始化
@State 、@StorageLink、@StorageProp、@Provide 变量需要本地初始化,初始化的值可以被构造参数覆盖;
@Prop 和@Link 变量必须且仅通过构造函数参数进行初始化。
? 父组件的常规变量可以用于初始化子组件的@State 变量,但不能用于初始化@Link 或
@Prop 变量。
? 父组件的@State 变量可以初始化子组件的@Prop、@Link(通过$)或常规变量,但不能
初始化子组件的@State 变量。
? 父组件的@Link 变量可以初始化子组件的@Link 或常规变量。但是初始化子组件的
@State 成员是语法错误,此外不建议初始化@prop。
? 父组件的@Prop 变量可以初始化子组件的常规变量或@Prop 变量,但不能初始化子组件
的@State 或@Link 变量。
? @StorageLink 和@StorageProp 不允许由父组件中传递到子组件。
生命周期回调函数定义
aboutToAppear 函数在创建自定义组件的新实例后,在执行其build函数之前执行。
aboutToDisappear 函数在自定义组件析构消耗之前执行。
onPageShow 页面显示时触发一次,包括路由过程、应用进入前后台等场景,仅@Entry修饰的自定义组件生效。
onPageHide 页面消失时触发一次,包括路由过程、应用进入前后台等场景,仅@Entry修饰的自定义组件生效。
onBackPress 当用户点击返回按钮时触发
分布式关键技术
流转架构
统一流转管理 UI,支持设备发现、选择以及任务管理。
支持远程服务调用等能力,可轻松设计业务。
支持多个应用同时进行流转。
支持不同形态设备,如手机、平板、TV、手表等。
流转任务管理服务
分布式任务调度
分布式安全
分布式软总线
兼容性设计
不管跨端迁移还是多端协同,流转都是由两个设备上的用户应用程序共同完成的;
跨端应用版本兼容
建议用户应用程序设计版本号和最小兼容版本号。只有满足如下规则,才可以进行流转:
? 设备 A 的用户应用程序版本号 ≥ 设备 B 的用户应用程序最小兼容版本号;
? 设备 B 的用户应用程序版本号 ≥ 设备 A 的用户应用程序最小兼容版本号。
流转任务管理服务提供的版本兼容性检查机制要求两个设备是同一个用户应用程序。
要求用户应用程序在填写 config.json 时,填写 minCompatibleVersionCode 字段(最小兼
容版本号)和 code 字段(当前版本号)。minCompatibleVersionCode 标识 app pack 能够兼
容的最低历史版本号。该标签值为 32 位整形数值,非负整数。如果应用/服务未配置
minCompatibleVersionCode,则系统将minCompatibleVersionCode默认填写为当前版本号。