如何使用 Flutter 开发 HarmonyOS 应用

文章目录

      • [为什么使用 Flutter 来开发?](#为什么使用 Flutter 来开发?)
      • [搭建 Flutter 开发环境](#搭建 Flutter 开发环境)
        • [mac 环境变量示例](#mac 环境变量示例)
        • [win 环境变量参考](#win 环境变量参考)
        • 验证环境变量是否配置成功
        • [集成与调试 Flutter OH SDK](#集成与调试 Flutter OH SDK)
        • [Flutter 开发环境搭建](#Flutter 开发环境搭建)
      • [第一个 Flutter OH 程序](#第一个 Flutter OH 程序)
      • [其它常用 Flutter OH 命令](#其它常用 Flutter OH 命令)
      • 题外话
      • [Flutter OH 参考文档](#Flutter OH 参考文档)

Author:Gorit

Date:2026年3月24日

Development:win 11


本教程适用于有一定鸿蒙应用开发基础的开发者或有 Flutter 开发经验的开发者,希望借助 Flutter 的跨端开发能力开发出自己的 app

为了方便表述:

后续采用 Flutter OH 表达

为什么使用 Flutter 来开发?

答:Flutter 可以编写一套代码。同时编译成 Android、IOS、HarmonyOS 应用,并且基于 Flutter 的自绘引擎,可以达到高还原度,且性能不输原生应用的体验效果

搭建 Flutter 开发环境

虽然 Google 官方并没有对 Flutter 增加 OpenHarmony 的支持,但是 OpenHarmony 社区却对 Flutter 增加了适配 ------ 基于 OpenHarmony 的 Flutter SDK

关于教程方面,主要是配置 Java 17 SDK、DevEco Studio、Flutter OH SDK 及相关的环境变量,

DevEco Studio 直接在 HarmonyOS 官网下载即可,这里不再过多赘述,下载好后,如果没有真机设备,那就用模拟器也可以

mac 环境变量示例
shell 复制代码
# 配置JDK 17
export JAVA_HOME=<JAVA_HOME path>/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

# 配置OpenHarmony SDK, ohpm, hvigor, node
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/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

#配置Flutter
export PUB_CACHE=~/PUB
export PATH=<flutter_flutter path>/bin:$PATH
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
win 环境变量参考

环境变量面板,添加以下配置:

① 配置配置 JDK 17

变量 作用域
JAVA_HOME <JDK path > 系统变量
Path %JAVA_HOME%\bin 追加到现有值

② 配置 OpenHarmony SDK ,ohpm, hvigor, node

变量 作用域
TOOL_HOME <Deveco-studio Path> 系统变量
DEVECO_SDK_HOME %TOOL_HOME%\sdk 系统变量
Path %TOOL_HOME%\tools\ohpm\bin 系统变量
Path %TOOL_HOME%\tools\hvigor\bin 系统变量
Path %TOOL_HOME%\tools\node\bin 系统变量

③ 配置 Flutter

变量 作用域
PATH <flutter_flutter Path>\bin 系统变量
PUB_CACHE <PUB Path> 系统变量
PUB_HOSTED_URL https://pub.flutter-io.cn 系统变量
FLUTTER_STORAGE_BASE_URL https://storage.flutter-io.cn 系统变量
验证环境变量是否配置成功

验证 JDK 17

shell 复制代码
java -version

验证 Flutter OH SDK 是否生效(以下为 Flutter 原生命令)

shell 复制代码
# 第一次可能会下载Dart SDK
dart --version

flutter --version

运行结果

集成与调试 Flutter OH SDK
shell 复制代码
flutter doctor -v

可以看到 Flutter 和 OH 的工具链都是 ok,环境搭建就完成了

具体步骤可以直接官方指导文档------OpenHarmony版Flutter环境搭建指导

PS:官方虽然推荐是在 mac 下进行开发,但是实际我在 win 环境也完整的将一个 flutter三方库(flutter_background_service)完成鸿蒙化的适配开发

Flutter 开发环境搭建

除了 DevEco 以外,我们还需要用到 vscode,分别安装 Flutter 和 Dart 的插件即可,具体的步骤就不详细概述,可以参考文档配置即可~

需要了解 Flutter 基础(有经验的可以跳过)

  • Dart 语言语法
  • Flutter 应用 Application、package、plugin 的关系和作用
  • Flutter 程序的基本概念(Flutter 中一切皆为 widget)
  • ...

第一个 Flutter OH 程序

创建一个 Flutter OH 工程

shell 复制代码
# 创建工程 方式一 该方式只创建了ohos平台
flutter create --platforms ohos <projectName> 

# 创建工程 方式二 该方式创建了android,ios,ohos三个平台
flutter create  <projectName> 

# 进入工程根目录编译hap包
flutter build hap --debug

默认执行第一个命令即可

使用 DevEco 打开 demo/ohos 目录:

等待完成编译构建,手动解决报错

打开模拟器

完成手动签名

以上步骤完成后,执行 flutter run 即可看到 flutter app 在 HarmonyOS 模拟器上运行起来了

其它常用 Flutter OH 命令

shell 复制代码
F# 创建 package项目
flutter create --platforms ohos,android,ios multi_entry_ohos

# 创建 plugin 项目
flutter create --platforms ohos,android,ios multi_entry_ohos --template=plugin

# 添加平台支持(插件)
flutter create -t plugin --platforms <platforms>

题外话

没记错的话,Flutter 发布了专门给 AI Agents 用的专门的 skill,用 AI 开发 Flutter 应用会变得事半功倍

Flutter OH 参考文档

1\] [Flutter OH 文档指引](https://gitcode.com/openharmony-tpc/flutter_samples/tree/master/ohos/docs) \[2\] [Flutter OH 学习 Demo](https://gitee.com/CodingGorit/flutter-roadmap-2025) \[3\] [Flutter 官方文档](https://flutter.dev/)

相关推荐
攻城狮在此1 小时前
企业网三层交换机与出口路由器互联配置案例
网络·华为
孤影过客1 小时前
Flutter高性能任务管理APP开发实战代码解析
jvm·flutter·oracle
键盘鼓手苏苏14 小时前
Flutter 三方库 p2plib 的鸿蒙化适配指南 - 实现高性能的端到端(P2P)加密通讯、支持分布式节点发现与去中心化数据流传输实战
flutter·harmonyos·鸿蒙·openharmony
加农炮手Jinx14 小时前
Flutter for OpenHarmony:postgrest 直接访问 PostgreSQL 数据库的 RESTful 客户端(Supabase 核心驱动) 深度解析与鸿蒙适配指南
数据库·flutter·华为·postgresql·restful·harmonyos·鸿蒙
加农炮手Jinx14 小时前
Flutter 组件 heart 适配鸿蒙 HarmonyOS 实战:分布式心跳监控,构建全场景保活检测与链路哨兵架构
flutter·harmonyos·鸿蒙·openharmony
钛态14 小时前
Flutter 三方库 http_mock_adapter — 赋能鸿蒙应用开发的高效率网络接口 Mock 与自动化测试注入引擎(适配鸿蒙 HarmonyOS Next ohos)
android·网络协议·flutter·http·华为·中间件·harmonyos
王码码203514 小时前
Flutter for OpenHarmony:Flutter 三方库 algoliasearch 毫秒级云端搜索体验(云原生搜索引擎)
android·前端·git·flutter·搜索引擎·云原生·harmonyos
王码码203514 小时前
Flutter 三方库 dns_client 的鸿蒙化适配指南 - 告别 DNS 劫持、探索 DNS-over-HTTPS (DoH) 技术、构建安全的鸿蒙网络请求环境
flutter·harmonyos·鸿蒙·openharmony·dns_client
键盘鼓手苏苏14 小时前
Flutter 组件 highlighter 适配鸿蒙 HarmonyOS 实战:高性能语法高亮,构建大规模代码分析与文本染色架构
flutter·harmonyos·鸿蒙·openharmony