鸿蒙ArkUI-X简介

news/2025/1/10 21:09:31/文章来源:https://www.cnblogs.com/zhaloe/p/18640790

ArkUI是一套构建分布式应用的声明式UI开发框架。它具备简洁自然的UI信息语法、丰富的UI组件、多维的状态管理,以及实时界面预览等相关能力,帮助您提升应用开发效率,并能在多种设备上实现生动而流畅的用户体验。

ArkUI-X进一步将ArkUI扩展到了多个OS平台:目前支持OpenHarmony、HarmonyOS、Android、 iOS,后续会逐步增加更多平台支持。开发者基于一套主代码,就可以构建支持多平台的精美、高性能应用。

关键特征

ArKUI跨平台框架关键特征如下:

  1. 简洁自然的声明式语法;
  2. 高效的渲染管线以及平台一致性的渲染机制;
  3. 高效的方舟编译器以及运行时;
  4. 统一的跨平台API能力集以及扩展机制;
  5. 动态化特性;

技术架构

ArkUI是面向全设备的UI开发框架,已通过OpenHarmony代码仓开源,其关键组成包括:

  • 开发模型;
  • 应用界面&交互;
  • 扩展机制-使能三方组件&平台API扩展机制;

ArkUI-X旨在将ArkUI开发框架扩展至其他OS平台(Android/iOS/Windows等),使开发者能够基于ArkUI开发框架,复用绝大部分的应用代码(UI以及主要应用逻辑),即可部署到不同OS平台上。

总体视图

img1
从设计之初,跨平台就作为ArkUI最基本的设计目标之一,当前已支持基础的跨平台架构。相关的设计思路如下:

  1. 采用 C++ 编写整体后端引擎代码,保持在多平台的可移植性,最小化平台依赖,降低平台移植成本;
  2. 整体绘制采用自渲染机制,降低平台依赖,同时进一步提升绘制效果的一致性;
  3. 抽象出平台适配层以及平台桥接层,以便不同平台的适配

另外,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集成跨平台应用开发。内容范围主要包括:

  1. 提供ArkUI跨平台开发框架基础引擎动态库,API插件动态库;
  2. 提供ArkUI跨平台应用构建命令行工具;
  3. 提供ArkUI组件渲染一致性系统资源包,应用资源编译工具

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/861318.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

腾讯云 AI 代码助手:从 0 到 1 打造自己的专属产品网页

手把手教零基础前端小白运用腾讯云 AI 代码助手,从 0 到 1 打造自己的专属产品网页:手把手教零基础前端小白运用腾讯云 AI 代码助手,从 0 到 1 打造自己的专属产品网页: 安装腾讯云 AI 代码助手 在开始编码之前:我在IDE插件市场搜索腾讯云AI 代码助手,本教程以在 Visual …

【日记】明年或许会是非常重要的一年(1231 字)

正文时间紧迫,简单写写。今天下午全国上下计划财务处条线的人都加班。从 14:30 开始,一直等通知到 15:30 多才开始做,说是系统只开放到 17:00,但是因为找数据、找会计科目、计算会计等式、冲账这一套下来挺花时间也蛮难的,所以我们折腾到了 16:30 左右才搞完。部分支行还涉…

《HarmonyOS第一课》焕新升级,赋能开发者快速掌握鸿蒙应用开发

随着HarmonyOS NEXT发布,鸿蒙生态日益壮大,广大开发者对于系统化学习平台和课程的需求愈发强烈。近日,华为精心打造的《HarmonyOS第一课》全新上线,集“学、练、考”于一体,凭借多维融合的教学模式与系统课程设置,助力开发者快速掌握HarmonyOS应用开发技能。四大课程模块…

【密码学】RSA的攻击方法总结

总结一下收集到的RSA的所有攻击方法。 一、RSA的前世今生 RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德李维斯特(Ron Rivest)、阿迪萨莫尔(Adi Shamir)和伦纳德阿德曼(Leonard Adleman)一起提出的。RSA就是他们三人姓…

manim边学边做--改变动画速度

ChangeSpeed类是Manim库中用于修改动画速度的类。 它提供了一种灵活的方式来控制动画的播放速度,使动画在不同时间段内以不同的速度播放,从而创造出更加丰富多样的动画效果。 比如,在创建包含多个元素动画的场景中,通过ChangeSpeed可以精确控制不同元素在不同时间点的移动速…

进程间通信组件ZeroMQ详解

在一些复杂的项目中,往往会由不同功能的程序组成,且在程序运行期间,各个程序还需要进行互相通信,实现进程间通信的方式有很多种,最常用的就是通过消息中间件,比如RabbitMQ,Kafaka,以及ZeroMQ等,而RabbitMQ和Kafaka这两款中间件往往都需要独立安装步骤才能使用,ZeroMQ…

Mongodb安装步骤 (.msi安装方式)

我之前发的Mongodb安装步骤 ,被人建议使用 .msi安装方式 所以重新发一版 Mongodb安装步骤 (.msi安装方式) 一、首先下载安装程序 下载链接 Try MongoDB Community Edition | MongoDB 选择 .msi 二、安装 1、双击.msi 2、next: 3、勾选接受,next: 4、complete是默认安装…

[Windows] 数据恢复软件R-Studio 8.14.179623

R-Studio是一个功能强大、节省成本的反删除和数据恢复软件系列。它采用独特的数据恢复新技术,为恢复FAT12/16/32、NTFS、NTFS5(由 Windows 2000/XP/2003/Vista/Windows 8/Windows 10创建或更新)、Ext2FS/Ext3FS(OSX LINUX 文件系统)以及 UFS1/UFS2(FreeBSD/OpenBSD/NetBS…

期末考试

每日总结管理系统: 此软件的主要用户包括学生、小组长、教师;各个用户主要功能为: (1)学生:写日报,修改日报,浏览日报、查询个人日报,查看站内消息。 (2)小组长:日报形式审核,发表情况统计,日报消息,查询日报。 (3)教师:日报评分,发表情况统计,日报消息,查…

【转载】什么是Banner以及测试时需要注意的点

设计中的banner图和测试中的banner图大家好,我是莫宁。相信很多新手小白在近几年也有听说过“banner”吧,是不是很疑惑。反正莫宁刚入门的时候是对这个词很陌生,不知道什么。今天就来为各位小伙伴解答这个疑问吧!什么是Banner?大家都知道“banner”翻译过来是横幅的意思,…

什么是Banner以及测试时需要注意的点

设计中的banner图和测试中的banner图大家好,我是莫宁。相信很多新手小白在近几年也有听说过“banner”吧,是不是很疑惑。反正莫宁刚入门的时候是对这个词很陌生,不知道什么。今天就来为各位小伙伴解答这个疑问吧!什么是Banner?大家都知道“banner”翻译过来是横幅的意思,…

CDS标准视图:功能位置可用标签 I_FUNCNLLOCALTERNATIVELABEL

视图名称:功能位置可用标签 I_FUNCNLLOCALTERNATIVELABEL 视图类型:基础 视图代码:点击查看代码 @EndUserText.label: Functional Location Alternative Labels @VDM.viewType: #BASIC @AccessControl.authorizationCheck: #CHECK @AbapCatalog.sqlViewName: IFUNCTLOCALTLB…