跨Android、iOS、鸿蒙多平台框架ArkUI-X

ArkUI是一套构建分布式应用界面的声明式UI开发框架。它使用极简的UI信息语法、丰富的UI组件、以及实时界面预览工具,帮助您提升移动应用界面开发效率30%。您只需使用一套ArkTS API,就能在Android、iOS、鸿蒙多个平台上提供生动而流畅的用户界面体验。

一、配套关系

表1 版本软件和平台配套关系

目标平台 项目编译使用OS SDK版本 备注
OpenHarmony 4.0 (API Version 10) Beta2
Android Android 8+ (API level 26+) NA
iOS iOS 10+ NA

二、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应用构建。

四、开发工具

ACE Tools是一套为ArkUI-X应用开发者提供的命令行工具,支持在Windows/Ubuntu/macOS平台运行,用于构建OpenHarmony、HarmonyOS、Android和iOS平台的应用程序, 其功能包括开发环境检查,新建项目,编译打包,安装调试等。

五、环境准备

前置条件: Ubuntu需要18.04以上版本,macOS需要11.6.2及以上版本,Windows需要Windows 10版本。

  1. 配置Node.js环境

运行ACE Tools和OpenHarmony SDK需Node.js环境支持,建议下载14.19.1 - 16.19.1版本。可命令行运行 node -v 查看本地Node.js版本,如不存在或版本不符合要求,请自行下载安装稳定版本:Node.js下载地址,并配置到环境变量。

  1. 配置Java环境

Android和OpenHarmony/HarmonyOS应用打包需Java环境支持,建议下载JDK11.0.2以上版本,下载请点击此处。推荐环境变量配置如下:

macOS

复制代码
// 配置环境变量
export JAVA_HOME=/path-to-java-sdk
export PATH=$JAVA_HOME/bin:$PATH

Windows

复制代码
// 配置环境变量  
set JAVA\_HOME\=/path-to-java-sdk  
set PATH\=%PATH%;%JAVA\_HOME%/bin
  1. 配置ohpm环境

OHPM CLI(OpenHarmony Package Manager Command-line Interface)是OpenHarmony应用工程的三方库的包管理工具,可通过DevEco Studio > File > Settings > Build, Execution, Deployment > Ohpm 查看ohpm home的安装路径,并配置到环境变量中。

  1. 配置ArkUI-X SDK环境

ArkUI-X SDK下载路径,可通过DevEco Studio > File > Settings > ArkUI-X(macOS为DevEco Studio > Preferences > ArkUI-X)查看ArkUI-X的下载路径,并配置到环境变量中。推荐环境变量配置如下:

macOS

复制代码
// 配置环境变量  
export ARKUIX\_SDK\_HOME\=/path-to-arkui-x-sdk

Windows

复制代码
// 配置环境变量  
set ARKUIX\_SDK\_HOME\=/path-to-arkui-x-sdk

六、命令安装

安装ace命令

七、开发环境检查

复制代码
ace check

执行 ace check 命令可以检查ArkUI-X应用本地开发环境是否完备。

注:开发环境检查主要针对Android/iOS/OpenHarmony/HarmonyOS IDE以及对应SDK的默认安装和下载路径进行检查。如果提示结果与实际不符,请您通过ace config命令指定实际的IDE安装和SDK下载路径。

八、创建应用

以创建一个 Stage模型'demo'项目为例:

复制代码
ace create project  
? Please enter the project name: demo  
? Please enter the bundle name (com.example.demo):com.example.demo  
? Please enter the system (1: OpenHarmony, 2: HarmonyOS): 1  
? Please enter the project type (1: Application, 2: Library): 1  
? Please enter the template (1: Empty Ability, 2: Native C++): 1   //选择创建Empty Ability或者Native C++项目

执行 `ace create project` 命令,接着输入工程名 demo。

九、应用运行

  • 安装运行到Android设备

    cd demo
    ace run apk

  • 安装运行到iOS设备

    cd demo
    ace run app

  • 安装运行到OpenHarmony设备

    cd demo
    ace run hap

上述命令会完成应用构建打包,并安装到目标平台设备运行。


为了能让大家更好的学习鸿蒙 (OpenHarmony) 开发技术,这边特意整理了《鸿蒙 (OpenHarmony)开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙 (OpenHarmony)开发学习手册》

入门必看:https://qr21.cn/FV7h05

  1. 应用开发导读(ArkTS)
  2. ......

HarmonyOS 概念:https://qr21.cn/FV7h05

  1. 系统定义
  2. 技术架构
  3. 技术特性
  4. 系统安全

如何快速入门?:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. 构建第一个JS应用
  4. ......

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ......

基于ArkTS 开发:https://qr21.cn/FV7h05

1.Ability开发

2.UI开发

3.公共事件与通知

4.窗口管理

5.媒体

6.安全

7.网络与链接

8.电话服务

9.数据管理

10.后台任务(Background Task)管理

11.设备管理

12.设备使用信息统计

13.DFX

14.国际化开发

15.折叠屏系列

16.......

相关推荐
stevenzqzq10 分钟前
android启动初始化和注入理解3
android
前端世界1 小时前
设备找不到、Ability 启不动?一次讲清 DevEco Studio 调试鸿蒙分布式应用
华为·harmonyos
行者962 小时前
OpenHarmony上Flutter粒子效果组件的深度适配与实践
flutter·交互·harmonyos·鸿蒙
城东米粉儿2 小时前
compose 状态提升 笔记
android
冰淇淋真好吃2 小时前
iOS实现 WKWebView 长截图的优雅方案
ios
小溪彼岸2 小时前
uni-app小白从0开发一款鸿蒙Next应用到上线
uni-app·harmonyos
asing2 小时前
🤯 为什么我的收银台在鸿蒙系统“第一次返回”死活拦不住?一次差点背锅的排查实录
前端·harmonyos
oMcLin2 小时前
如何在Debian 11上通过配置MySQL 8.0的分布式架构,提升跨区域数据同步的效率与延迟?
分布式·mysql·debian
粤M温同学2 小时前
Android 实现沉浸式状态栏
android
一条咸鱼_SaltyFish3 小时前
[Day15] 若依框架二次开发改造记录:定制化之旅 contract-security-ruoyi
java·大数据·经验分享·分布式·微服务·架构·ai编程