鸿蒙 ArkUI-X 简介
ArkUI 是一套构建分布式应用的声明式 UI 开发框架。它具备简洁自然的 UI 信息语法、丰富的 UI 组件、多维的状态管理,以及实时界面预览等相关能力,帮助您提升应用开发效率,并能在多种设备上实现生动而流畅的用户体验。
ArkUI-X 进一步将 ArkUI 扩展到了多个 OS 平台:目前支持 OpenHarmony、HarmonyOS、Android、 iOS,后续会逐步增加更多平台支持。开发者基于一套主代码,就可以构建支持多平台的精美、高性能应用。
关键特征
ArKUI 跨平台框架关键特征如下:
简洁自然的声明式语法;
高效的渲染管线以及平台一致性的渲染机制;
高效的方舟编译器以及运行时;
统一的跨平台 API 能力集以及扩展机制;
动态化特性;
技术架构
ArkUI 是面向全设备的 UI 开发框架,已通过 OpenHarmony 代码仓开源,其关键组成包括:
开发模型;
应用界面 &交互;
扩展机制-使能三方组件 &平台 API 扩展机制;
ArkUI-X 旨在将 ArkUI 开发框架扩展至其他 OS 平台(Android/iOS/Windows 等),使开发者能够基于 ArkUI 开发框架,复用绝大部分的应用代码(UI 以及主要应用逻辑),即可部署到不同 OS 平台上。
总体视图
从设计之初,跨平台就作为 ArkUI 最基本的设计目标之一,当前已支持基础的跨平台架构。相关的设计思路如下:
采用 C++ 编写整体后端引擎代码,保持在多平台的可移植性,最小化平台依赖,降低平台移植成本;
整体绘制采用自渲染机制,降低平台依赖,同时进一步提升绘制效果的一致性;
抽象出平台适配层以及平台桥接层,以便不同平台的适配
另外,ArkUI 依赖的 ArkTS 引擎以及图形引擎,也可跨平台。
ArkUI 声明式 UI 后端引擎,主要完成整体 pipeline 流程控制、视图更新、布局系统、多页面管理、事件分发和回调、焦点管理、动画机制、主题机制、资源管理/缓存/provider 等。 其中的 UI 组件,主要通过显示相关组件细粒度化,动画、事件、焦点等机制组件化,满足适配不同前端所需要的灵活性。
整体的跨平台需求,就是扩展 ArkUI 开发框架到其他 OS 平台,帮助开发者降低多平台应用开发成本。
通过 ACE Tools 命令行工具创建跨平台应用工程,开发者基于一套主代码,就可以构建支持多平台的精美、高性能应用。
跨平台框架构建系统
ArkUI-X 编译构建提供了一套基于 GN 和 Ninja 的编译构建框架,基础构建基于 OpenHarmony 的 build 仓,并在 OpenHarmony 构建基础上新增 Android 和 iOS 编译工具链,以支持 ArkUI 跨平台 SDK 编译输出。
跨平台 SDK 结构设计
跨平台 SDK 主要用于支持 ACE Tools 命令行跨平台应用构建和 DevEco Studio\Android Studio\Xcode 集成跨平台应用开发。内容范围主要包括:
提供 ArkUI 跨平台开发框架基础引擎动态库,API 插件动态库;
提供 ArkUI 跨平台应用构建命令行工具;
提供 ArkUI 组件渲染一致性系统资源包,应用资源编译工具
版权声明: 本文为 InfoQ 作者【龙儿筝】的原创文章。
原文链接:【http://xie.infoq.cn/article/ba51fedf36d665cd0c70f38d9】。文章转载请联系作者。
评论