随着越来越多设备的智能化,新的场景以及新的需求越来越分散,包括各类屏幕的支持、各类交互模式的支持、各类不同能力的设备、以及设备之间的连续交互等。对于应用开发者而言,如何满足上述需求开发出精致流畅和一致体验的应用,挑战也越来越大。
ArkUI高效开发精致流畅的移动应用
ArkUI是HarmonyOS官方原生框架,是一套声明式UI开发框架。它使用ArkTS作为开发语言,提供了简洁自然的声明式语法、组件化机制、数据-UI自动关联等能力,实现了贴近自然语言,书写效率更高的编程方式,同时提供了丰富的UI组件、以及实时界面预览工具,帮助开发者提升应用界面开发效率。
ArkUI具备简洁自然的声明式语法、高效的渲染管线以及平台一致性的渲染机制、高效的方舟编译器以及运行时等关键特征。其核心架构如下图:
ArkUI Engine是ArkUI的核心引擎,包括了基础的渲染管线和布局、动效引擎,以及实现了100+开箱即用的UI组件。方舟图形引擎提供高效的图形绘制、渲染及动效能力。ArkTS Runtime提供高性能的语言运行时,通过ArkTS的静态类型信息,可进行更多深入的优化,提升应用启动和运行性能。
ArkUI跨平台框架
ArkUI在架构设计之初就是把跨平台作为一个重要特性考虑在内的,从代码的架构上就对各个平台做了解耦,可以方便的移植到不同的平台。同时ArkUI使用的核心引擎、图形引擎和ArkTS运行时等关键模块都是可以跨平台的。目的是让开发者基于一套主代码,就可以将HarmonyOS上开发的精美、高性能应用同时运行在其它不同的OS平台上。
在刚刚结束的华为开发者大会2023上,ArkUI最新开源了一个跨平台项目,即ArkUI-X开源项目,这个“X”可以理解为“Cross”,将ArkUI扩展到不同的平台上,同时也代表了未来无限的可能。
ArkUI-X跨平台的应用工程和最新的HarmonyOS是保持一样的,当前支持构建HarmonyOS,Android以及iOS的应用程序。
支持最新的Stage开发模型:支持基础的AbilityStage和UIAbility等能力,也支持多module的开发及运行。
支持UI基础组件跨平台,并且支持完整的状态管理能力。
Resource的资源格式也是跨平台的,不需要考虑不同平台下的资源处理,资源配置和访问的方式是保持一致的,并且支持多语言等能力。
支持鸿蒙生态的标准API,按照插件的方式跨平台按需打包。提供了轻量的跨语言桥接机制,快速扩展对应平台上已有的能力。
提供测试框架,测试工程的目录结构,同样也和HarmonyOS的工程保持一致。
ArkUI跨平台实践案例
华为智慧生活应用之前单品的详情页,在不同平台是分别进行开发的,开发成本较高。使用ArkUI-X跨平台项目后,部分单品新增支持了一个平台,可复用的跨平台代码占比高达75%,并且有较好的性能体验。真正的做到了"代码一次开发,三个平台部署"。
ArkUI-X项目社区介绍
ArkUI-X项目由OpenHarmony TSC跨平台应用开发框架TSG孵化、完全社区运作的开源项目,社区的链接为:https://gitee.com/arkui-x,更多指导文档、社区说明以及后续的Roadmap和计划都可以在社区中查阅。
期待大家一起参与社区的共建!
领取专属 10元无门槛券
私享最新 技术干货