跨平台开发 ArkUI-X

鸿蒙、Flutter、SwiftUI、Compose都是声明式布局,这四者开发风格都比较相似。其中我个人觉得鸿蒙和Flutter是最像的,不仅代码风格和布局属性像,就连很多组件的命名都一模一样,比如Row、Column等。

最开始我想着以后市场上肯定会出现很多用Flutter一拖三的方式开发的项目。但是当我看到一篇关于ArkUI-X的文章,发现鸿蒙可以跨平台后就不这么觉得了,貌似以后只需要开发一份鸿蒙代码,就可以满足鸿蒙、iOS、Android了。🤔

ArkUI是鸿蒙的UI开发框架、ArkUI-X是基于ArkUI的跨平台框架。(ArkUI-X开源项目地址ArkUI-X-v2.0.0-Beta1版本

.

.

一、安装 DevEco Studio 开发工具

开发工具DevEco Studio 版本要安装4.0,我最开始安装的3.1的发现无法配置 ArkUI-X。

DevEco Studio 4.0 下载地址: Windows(64-bit)Mac(Intel)Mac(ARM)

DevEco Studio 安装官方教程:DevEco Studio 使用指南

.

二、DevEco Studio 配置

1、安装成功后,打开偏好设置

2、然后点击SDK,选择HarmonyOS,勾选并安装3.1.0(API 9)版本,点击确定

3、切换Tools,勾选并安装模拟器,点击确定

4、最后选择OpenHarmony,勾选并安装 API Version 10版本,点击确定

(安装前 - 需要点击Edit选择安装地址,我用的默认地址)

(安装成功)

.

三、ArkUI-X 配置

配置完后会看到偏好设置里面多出来了一个ArkUI-X选项,切换到 ArkUI-X,勾选并安装 API Version 10版本,点击确定

.

四、新建项目

1、点击右上角更多,弹出框中选择Import Sample

2、在弹出框中选择OpenHarmony,点击ArkUI-X下的HelloWorld

点击下一步,会生成一个基于 ArkUI-X 的 Hello World 新工程

3、打开工程,点击Build,选择编译App(s),等待编译完成

4、查看工程,在.arkui-x 目录下,可以分别看到AndroidiOS项目的文件夹

(推荐几款好用的插件,示例如上图:汉化插件Chinese、 图标插件Atom Material Icons、 黑色主题插件One Dark theme、 代码缩进插件Rainbow Brackets

.

五、iOS运行

打开iOS文件夹,用Xcode打开iOS工程,直接运行就行了,可以运行模拟器、可以运行真机

(iOS相关的证书配置、Xcode配置、真机运行编译这里就不做额外的拓展了)

真机运行效果:

.

注意:

我修改代码后,想在iOS上看到更新效果,于是在Xcode上重新运行了项目,但是一直看不到更新内容。

于是我重新构建了一次(点击Build,选择编译App(s)),再运行项目,就可以看到更新了。。。😒

.

资料:

鸿蒙应用开发-初见:ArkUI-X
鸿蒙开发者官网
ArkUI-X开源项目地址
DevEco Studio 使用指南
华为发布了跨平台开发的ArkUI-X,我不允许你学不会!
鸿蒙跨平台框架来了ArkUi-X
OpenHarmony 4.0 Release
华为开发者大会 2023(HDC.Together)开发者主题演讲

如果觉得本文有用,可以在下方点个赞。如果发现有遗漏或不对的地方,请在下方留言~

相关推荐
写雨.03 小时前
鸿蒙定位开发服务
华为·harmonyos·鸿蒙
goto_w8 小时前
uniapp上使用webview与浏览器交互,支持三端(android、iOS、harmonyos next)
android·vue.js·ios·uni-app·harmonyos
别说我什么都不会1 天前
ohos.net.http请求HttpResponse header中set-ccokie值被转成array类型
网络协议·harmonyos
码是生活1 天前
鸿蒙开发排坑:解决 resourceManager.getRawFileContent() 获取文件内容为空问题
前端·harmonyos
鸿蒙场景化示例代码技术工程师1 天前
基于Canvas实现选座功能鸿蒙示例代码
华为·harmonyos
小脑斧爱吃鱼鱼1 天前
鸿蒙项目笔记(1)
笔记·学习·harmonyos
鸿蒙布道师1 天前
鸿蒙NEXT开发对象工具类(TS)
android·ios·华为·harmonyos·arkts·鸿蒙系统·huawei
zhang1062091 天前
HarmonyOS 基础组件和基础布局的介绍
harmonyos·基础组件·基础布局
马剑威(威哥爱编程)1 天前
在HarmonyOS NEXT 开发中,如何指定一个号码,拉起系统拨号页面
华为·harmonyos·arkts
GeniuswongAir1 天前
Flutter极速接入IM聊天功能并支持鸿蒙
flutter·华为·harmonyos