ArkUI是一套构建分布式应用的声明式UI开发框架。它具备简洁自然的UI信息语法、丰富的UI组件、多维的状态管理,以及实时界面预览等相关能力,帮助您提升应用开发效率,并能在多种设备上实现生动而流畅的用户体验。详情可参考ArkUI框架介绍。
ArkUI-X进一步将ArkUI扩展到了多个OS平台:目前支持OpenHarmony、HarmonyOS、Android、 iOS,后续会逐步增加更多平台支持。开发者基于一套主代码,就可以构建支持多平台的精美、高性能应用。
关键特征
ArKUI跨平台框架关键特征如下:
- 简洁自然的声明式语法。
- 高效的渲染管线以及平台一致性的渲染机制。
- 高效的方舟编译器以及运行时。
- 统一的跨平台API能力集以及扩展机制。
技术架构
ArkUI跨平台框架整体架构如下图所示,详细设计请参考ArkUI跨平台设计总体说明。
版本概述
首次发布ArkUI-X 1.0.0 Canary1版本,主要能力范围包括:
- 应用开发范式:支持基于ArkTS的声明式开发范式。
- 应用开发模型:支持Stage开发模型。
- 开发者工具:提供DevEco Studio(IDE)和ACE Tools(命令行)两种ArkUI-X应用构建工具。
- 混合开发能力:ArkTS声明式开发范式和Stage模型支持集成在现有iOS/Android应用中,通过现有应用加载,解析和运行。
- 跨语言调用能力:提供FFI(Node-API)和平台桥接两种机制,用于API扩展和平台插件开发。
- 基础测试调试:支持单元/UI/XTS集成测试和ArkTS断点调试。
接口范围
ArkUI跨平台接口包含OpenHarmony接口和自定义扩展接口,OpenHarmony接口以Public接口为基础,接口范围为API10+,具体支持列表详见API参考。
说明:ArkUI-X 1.0.0 Canary1版本为ArkUI-X首次发布的预览版本,除提供ArkUI控件和部分@ohos接口之外,暂不提供其它OpenHarmony接口定义的跨平台实现。
应用开发工具
- ACE Tools,是一套为ArkUI-X开发者提供的命令行工具,包括开发环境检查,新建项目,编译打包,安装调试。详情参见ACE Tools快速入门。
- DevEco Studio,是OpenHarmony和HarmonyOS默认的应用程序IDE开发工具,同时支持ArkUI-X应用创建和构建等功能。详情参见DevEco Studio使用说明。
配套关系
表1 版本软件和平台配套关系
目标平台 | 项目编译使用OS SDK版本 | 备注 |
---|---|---|
OpenHarmony | 4.0 (API Version 10) | Beta2 |
Android | Android 8+ (API level 26+) | NA |
iOS | iOS 10+ | NA |
说明:Canary1版本为面向特定开发者发布的早期预览版本,不承诺UI和API稳定性。
源码获取
前提条件
-
注册码云gitee帐号。
-
注册码云SSH公钥,请参考码云帮助中心。
-
安装git客户端和git-lfs并配置用户信息。
git config --global user.name "yourname" git config --global user.email "your-email-address" git config --global credential.helper store
-
安装码云repo工具,可以执行如下命令。
curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo#如果没有权限,可下载至其他目录,并将其配置到环境变量中chmod a+x /usr/local/bin/repo pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
通过repo获取
方式一(推荐)
通过repo + ssh 下载(需注册公钥,请参考码云帮助中心)。
-
从版本分支获取源码。可获取该版本分支的最新源码,包括版本发布后在该分支的合入。
repo init -u [email protected]:arkui-x/manifest.git -b ArkUI-X-1.0.0-Canary1 --no-repo-verify repo sync -c repo forall -c 'git lfs pull'
-
从版本发布Tag节点获取源码。可获取与版本发布时完全一致的源码。
repo init -u [email protected]:arkui-x/manifest.git -b refs/tags/ArkUI-X-v1.0.0-Canary1 --no-repo-verify repo sync -c repo forall -c 'git lfs pull'
方式二
通过repo + https 下载。
-
从版本分支获取源码。可获取该版本分支的最新源码,包括版本发布后在该分支的合入。
repo init -u https://gitee.com/arkui-x/manifest.git -b ArkUI-X-1.0.0-Canary1 --no-repo-verify repo sync -c repo forall -c 'git lfs pull'
-
从版本发布Tag节点获取源码。可获取与版本发布时完全一致的源码。
repo init -u https://gitee.com/arkui-x/manifest.git -b refs/tags/ArkUI-X-v1.0.0-Canary1 --no-repo-verify repo sync -c repo forall -c 'git lfs pull'
SDK获取
表2 获取SDK路径列表
SDK版本 | 版本信息 | 下载站点 | SHA256校验码 |
---|---|---|---|
ArkUI-X SDK包(macOS) | 1.0.0 Canary1 | 站点 | SHA256校验码 |
ArkUI-X SDK包(macOS-M1) | 1.0.0 Canary1 | 站点 | SHA256校验码 |
ArkUI-X SDK包(Windows) | 1.0.0 Canary1 | 站点 | SHA256校验码 |
ArkUI-X SDK包(Linux) | 1.0.0 Canary1 | 站点 | SHA256校验码 |
Samples
表3 Samples列表
项目名称 | 简介 |
---|---|
HelloWorld | HellWorld应用工程示例,支持Android、iOS和OpenHarmony应用构建。 |
Shopping | 仿购物应用工程示例,支持Android、iOS和OpenHarmony应用构建。 |
HealthyDiet | 健康饮食应用工程示例,支持Android、iOS和OpenHarmony应用构建。 |
Native | NAPI应用工程示例,支持Android、iOS和OpenHarmony应用构建。 |
Library | 平台库应用工程示例,支持Android、iOS和OpenHarmony应用构建。 |
请访问Samples仓了解更多消息。