开发者论坛

标题: Harmony,满天星光,共赴璀璨星河 [打印本页]

作者: admin    时间: 2024-7-9 15:28
标题: Harmony,满天星光,共赴璀璨星河
[md]```
Flutter Love Harmony - 掘金 (juejin.cn)
不是 Harmony ArkUI 不会写,而是 Flutter 更有性价比 - 掘金 (juejin.cn)
Flutter Harmony 化 在一起 就可以 - 掘金 (juejin.cn)
Flutter 到 Harmony,不是有手就行吗? (下拉刷新) - 掘金 (juejin.cn)
Flutter 到 Harmony,不是有手就行吗? (列表加载更多) - 掘金 (juejin.cn)
Flutter 到 Harmony,不是有手就行吗? (仿掘金点赞按钮) - 掘金 (juejin.cn)
前言
DM_20240704093400_001.JPG

DM_20240704093400_002.JPG

随着 HDC 2024 的结束,Harmony Next 正式对个人开发者开放,个人开发者终于能够更简单地加入到 Harmony Next 的体验中。(之前只有少数个人开发者能加入到预览中 华为纯血 Harmony HarmonyOS NEXT 开发者预览版首批 Beta 招募开启,支持 Mate 60 / Pro、X5 机型)。

最新工具 - 下载中心 - 华为开发者联盟 (huawei.com)

DevEco Studio NEXT Developer Beta1

面向 HarmonyOS 应用及元服务开发者提供的集成开发环境(IDE),助力高效开发。

Build Version 5.0.3.403 发布日期 2024/06/21

真机和模拟器的区别
这一次除了开放下载 DevEco Studio Next 版本,还开放了模拟器下载,(当然,需要去申请一下,很快就会通过),那么真机和模拟器有什么区别呢?

模拟器与真机的差异-概述-使用模拟器运行应用/服务-应用/服务运行-DevEco Studio | 华为开发者联盟 (huawei.com)

在 ui 层面,主要是一些效果,比如阴影或者 3d 效果的缺失。这里提前说这个,是因为后面要考。

DM_20240704093400_003.JPG

Harmony 玩家
如果你是一个 Harmony 开发者,就比较简单了,直接到 最新工具 - 下载中心 - 华为开发者联盟 (huawei.com) 下载符合你的设备的 DevEco Studio。

如果你第一次玩,需要创建一个华为开发者账号,后续需要用到。比如如果你使用真机,需要登录账号签名。比如你下载模拟器,需要登录账号,去申请模拟器下载权限。

DM_20240704093400_004.JPG

点击链接,申请模拟器下载权限。

怎么编写 Harmony 应用,我这里不展开写了。大家可以查看下面的文章了解更多的信息。

Flutter 到 Harmony,不是有手就行吗? (下拉刷新) - 掘金 (juejin.cn)
Flutter 到 Harmony,不是有手就行吗? (列表加载更多) - 掘金 (juejin.cn)
Flutter 到 Harmony,不是有手就行吗? (仿掘金点赞按钮) - 掘金 (juejin.cn)
欢迎大家使用 HarmonyCandies 提供的 Harmony 组件,欢迎加入 HarmonyCandies (github.com)。

DM_20240704093400_005.JPG

Flutter Harmony 化玩家
作为 Flutter Harmony 化的玩家,你没有阅读过下面的文章,也没有关系。 OpenHarmony-SIG/flutter_flutter (gitee.com) Harmony 化社区更新很快,之前文章里面的一些信息已经失效。

Flutter Love Harmony - 掘金 (juejin.cn)
不是 Harmony ArkUI 不会写,而是 Flutter 更有性价比 - 掘金 (juejin.cn)
Flutter Harmony 化 在一起 就可以 - 掘金 (juejin.cn)
后续内容全部基于 OpenHarmony-SIG/flutter_flutter (gitee.com) 和 OpenHarmony-SIG/flutter_engine (gitee.com) 的 dev 分支。参考文档也以 dev 分支 的文档为准。另外最新支持的是 ohos api12 。

下面基于最新的社区进度,主要讲一下环境和一些注意事项。

Mac
Mac 分 X86 和 ARM 芯片的。注意,由于目前 Flutter for Harmony 暂时不支持 x86_x64 架构,在 X86 芯片的 Mac 上面,你只能用真机开发。ARM 芯片(即 M1,M2,M3,M4) 可以使用模拟器。

Windows
注意,由于目前 Flutter for Harmony 暂时不支持 x86_x64 架构,所以 Windows 上面你只能使用真机进行开发。

模拟器真机差异
前面说了模拟器与真机之间是有差异的,这导致 Flutter 在 Harmony 模拟器中,可能某些组件 API  不能使用。

模拟器与真机的差异-概述-使用模拟器运行应用/服务-应用/服务运行-DevEco Studio | 华为开发者联盟 (huawei.com)

DM_20240704093400_003.JPG

比如说 FloatingActionButton 包含阴影效果,就没法在模拟器中使用,会导致闪退。上图相关的 API 我们都要注意一下。

可以的话,做 Flutter Harmony 化最好是使用真机。

环境配置
准备工作
下载适配 Harmony 的 flutter sdk
git clone -b dev git@gitee.com:openharmony-sig/flutter_flutter.git

下载 DevEco-Studio 最新工具 - 下载中心 - 华为开发者联盟 (huawei.com)
Mac 和 Linux
设置环境变量
我的 Harmony 相关的内容是放在 /Users/zmtzawqlp/Documents/ohos/flutter/flutter_flutter 中的。

export PATH=/Users/zmtzawqlp/Documents/ohos/flutter/flutter_flutter/binPATH
export PATH=/Users/zmtzawqlp/Documents/ohos/flutter/flutter_flutter/bin/cache/dart-sdk/binPATH

# ohos
export TOOL_HOME=/Applications/DevEco-Studio.app/Contents # mac环境
export DEVECO_SDK_HOME=$TOOL_HOME/sdk # command-line-tools/sdk
export PATH=$TOOL_HOME/tools/ohpm/binPATH # command-line-tools/ohpm/bin
export PATH=$TOOL_HOME/tools/hvigor/binPATH # command-line-tools/hvigor/bin
export PATH=$TOOL_HOME/tools/node/binPATH # command-line-tools/tool/node/bin

Windows
去环境变量中添加,下面的键值对。
DM_20240704093400_006.JPG
DM_20240704093400_007.JPG

去环境变量 PATH 中添加,下面的路径
DM_20240704093400_008.JPG

以及 flutter 和 dart 的路径,这里就不截图了。

引擎编译
目前,社区已经支持自动下载最新的线上引擎,所以对于不追求引擎代码随时最新的玩家,这部分内容可以跳过。

环境准备
构建的基础配置请查考: flutter/docs/engine/contributing/Setting-up-the-Engine-development-environment.md at master · flutter/flutter (github.com)

编译问题
python 版本
```

[/md]




欢迎光临 开发者论坛 (https://oh-test.qingcheng100.cn/) Powered by Discuz! X3.5