【HarmonyOS】HarmonyOS 和 Flutter混合开发 (一)之鸿蒙Flutter环境安装

【HarmonyOS】HarmonyOS 和 Flutter混合开发 (一)之鸿蒙Flutter环境安装

一、前言

flutter作为开源适配框架方案,已经在Android,IOS,Web,Window四大平台进行了适配,一套代码,可以同时展现在多个平台。所以Flutter适配鸿蒙也正式发布了。经过了今年的迭代,已经逐渐稳定中,虽然没有RN框架在鸿蒙上的适配速度快,但是也可以商用了。

关于Flutter跨平台方案的性能,可以参考这篇文章:跨平台为何选择Flutter

二、混合开发环境安装

使用flutter开发HarmonyOS,需要分别安装这两个的开发环境,鸿蒙环境安装略过了。详情可以参照之前的博客安装步骤:鸿蒙应用开发环境安装和配置

目前鸿蒙 Flutter的环境还是有映射匹配的关系:需要使用 API12, deveco-studio-5.0 或 command-line-tools-5.0,安装鸿蒙时需要注意。

flutter环境单独安装,可参考这篇文章:Flutter 第二章 环境安装

1. 下载JDK环境

在鸿蒙中的flutter的安装与单独安装大同小异。首先需要安装java环境。即: JDK 17下载官网链接

以window举例:

选择对应的设备型号下载链接后,再下面这个弹框中,勾选同意,才能点击下载按钮。

需要注意的是,现在Oracle官网下载JDK需要注册用户了。使用邮箱注册即可。

下载时,有可能遇到下载链接后,提示400,请求头cookie过大。此时更换浏览器为隐私模式,再重新去官网链接下载即可。


2.进行JDK环境安装

点击下载后的exe安装包,傻瓜式安装即可。

注意,默认安装在C盘。提前在其他盘创建好文件夹,粘贴到更改路径里,然后点击下一步安装。等待安装完成。

安装完成后,直接通过命令验证版本:

显示截图这类信息,代表JDK安装完成。(现在是真方便了,当年还要单独配置JDK的环境变量)

3.下载鸿蒙版flutter

https://gitee.com/openharmony-sig/flutter_flutter

下载压缩包后,解压放在c盘以外的文件夹。后面配置需要用到文件路径。

4.配置Flutter开发环境变量

计算机属性-高级系统设置-环境变量

dart 复制代码
 #依赖缓存
 export PUB_CACHE=D:/PUB(自定义路径)
# 国内镜像
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

# 拉取下来的flutter_flutter/bin目录
export PATH=D:\CodeWorld\Flutter\flutter_flutter-master\bin:$PATH

# OpenHarmony SDK
export DEVECO_SDK_HOME=$TOOL_HOME/sdk # command-line-tools/sdk
export PATH=$TOOL_HOME/tools/ohpm/bin:$PATH # command-line-tools/ohpm/bin
export PATH=$TOOL_HOME/tools/hvigor/bin:$PATH # command-line-tools/hvigor/bin
export PATH=$TOOL_HOME/tools/node/bin:$PATH # command-line-tools/tool/node/bin
export HDC_HOME=$TOOL_HOME/sdk/default/openharmony/toolchains # hdc指令(可选)

# 可选配置项(防止由于flutter鸿蒙版的git下载地址环境变量不匹配,影响后续的flutter项目创建)
export FLUTTER_GIT_URL=https://gitee.com/openharmony-sig/flutter_flutter.git

export PATH=<git path>/cmd:$PATH

将以上信息,成对配置在环境变量的系统变量里。以下图举例:

注意

PATH配置到系统环境变量的path里新增即可。

Windows环境下flutter工程和依赖的插件工程需要在同一个磁盘。

windows环境中需要添加git环境变量配置,否则会造成执行 flutter 命令 出现闪退。

以上配置完成后,重启电脑,环境变量生效。使用 flutter doctor -v 进行检查。

相关推荐
ONEDAY21 小时前
HarmonyOS 深色模式适配实践:从资源、WebView 到网络图统一处理
harmonyos
鸿蒙开发2 天前
鸿蒙(HarmonyOS NEXT)表单校验别再手撸正则了 —— 我写了个 ArkTS 版 zod
harmonyos
TrisighT2 天前
ArkTS 的 @BuilderParam 你八成只用了皮毛——那个尾随闭包写法差点被我当 bug 删了
harmonyos·arkts·arkui
恋猫de小郭2 天前
Amper 正式转正 Kotlin Toolchain ,Gradle 未来何去何从
android·前端·flutter
张风捷特烈2 天前
Flutter 类库大揭秘#02 | path_provider 各平台实现
前端·flutter
ONEDAY3 天前
HarmonyOS 多 Product 构建实践:一套代码生成多个产物
harmonyos
TT_Close3 天前
别劝退了!5秒搞定 Flutter 鸿蒙 FVM 起跑线
flutter·harmonyos·visual studio code
TrisighT3 天前
ArkTS 列表滚动时为什么会闪现旧数据?我扒了 LazyForEach 的复用逻辑
harmonyos·arkts·arkui
MonkeyKing3 天前
鸿蒙ArkTS深度剖析:ArkTS与TS/JS核心差异、静态强类型实战优势
typescript·harmonyos
TrisighT3 天前
Electron鸿蒙PC上写日志文件,我被权限和路径坑了两次
electron·harmonyos