当前位置: 首页 > article >正文

如何使用 Flutter 开发 HarmonyOS 应用

文章目录为什么使用 Flutter 来开发搭建 Flutter 开发环境mac 环境变量示例win 环境变量参考验证环境变量是否配置成功集成与调试 Flutter OH SDKFlutter 开发环境搭建第一个 Flutter OH 程序其它常用 Flutter OH 命令题外话Flutter OH 参考文档AuthorGoritDate2026年3月24日Developmentwin 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 环境变量示例# 配置JDK 17exportJAVA_HOMEJAVA_HOME path/Contents/HomeexportPATH$JAVA_HOME/bin:$PATH# 配置OpenHarmony SDK, ohpm, hvigor, nodeexportTOOL_HOME/Applications/DevEco-Studio.app/Contents# mac环境exportDEVECO_SDK_HOME$TOOL_HOME/sdk# command-line-tools/sdkexportPATH$TOOL_HOME/tools/ohpm/bin:$PATH# command-line-tools/ohpm/binexportPATH$TOOL_HOME/tools/hvigor/bin:$PATH# command-line-tools/hvigor/binexportPATH$TOOL_HOME/tools/node/bin:$PATH# command-line-tools/tool/node/bin#配置FlutterexportPUB_CACHE~/PUBexportPATHflutter_flutter path/bin:$PATHexportPUB_HOSTED_URLhttps://pub.flutter-io.cnexportFLUTTER_STORAGE_BASE_URLhttps://storage.flutter-io.cnwin 环境变量参考在环境变量面板添加以下配置① 配置配置JDK 17变量值作用域JAVA_HOMEJDK path 系统变量Path%JAVA_HOME%\bin追加到现有值② 配置OpenHarmony SDK,ohpm,hvigor,node变量值作用域TOOL_HOMEDeveco-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变量值作用域PATHflutter_flutter Path\bin系统变量PUB_CACHEPUB Path系统变量PUB_HOSTED_URLhttps://pub.flutter-io.cn系统变量FLUTTER_STORAGE_BASE_URLhttps://storage.flutter-io.cn系统变量验证环境变量是否配置成功验证 JDK 17java-version验证 Flutter OH SDK 是否生效以下为 Flutter 原生命令# 第一次可能会下载Dart SDKdart--versionflutter--version运行结果集成与调试 Flutter OH SDKflutter 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 工程# 创建工程 方式一 该方式只创建了ohos平台flutter create--platformsohosprojectName# 创建工程 方式二 该方式创建了android,ios,ohos三个平台flutter createprojectName# 进入工程根目录编译hap包flutter build hap--debug默认执行第一个命令即可使用 DevEco 打开demo/ohos目录等待完成编译构建手动解决报错打开模拟器完成手动签名以上步骤完成后执行flutter run即可看到 flutter app 在 HarmonyOS 模拟器上运行起来了其它常用 Flutter OH 命令F# 创建 package项目flutter create--platformsohos,android,ios multi_entry_ohos# 创建 plugin 项目flutter create--platformsohos,android,ios multi_entry_ohos--templateplugin# 添加平台支持插件flutter create-tplugin--platformsplatforms题外话没记错的话Flutter 发布了专门给 AI Agents 用的专门的 skill用 AI 开发 Flutter 应用会变得事半功倍Flutter OH 参考文档[1] Flutter OH 文档指引[2] Flutter OH 学习 Demo[3] Flutter 官方文档

相关文章:

如何使用 Flutter 开发 HarmonyOS 应用

文章目录为什么使用 Flutter 来开发?搭建 Flutter 开发环境mac 环境变量示例win 环境变量参考验证环境变量是否配置成功集成与调试 Flutter OH SDKFlutter 开发环境搭建第一个 Flutter OH 程序其它常用 Flutter OH 命令题外话Flutter OH 参考文档Author:…...

计算机毕业设计269—基于python+深度学习+YOLOV8的交通标志识别系统(源代码+数据库+报告)

毕设所有选题: https://blog.csdn.net/2303_76227485/article/details/131104075 基于python深度学习YOLOV8的交通标志识别系统(源代码数据库报告)269 一、系统介绍 1、用户: 在界面中选择各种图片,可以是自己在路边拍摄的图片&#xff0…...

特征选择避坑指南:Relief与ReliefF算法的区别与适用场景全解析

特征选择避坑指南:Relief与ReliefF算法的区别与适用场景全解析 在数据科学项目中,特征选择往往是决定模型性能的关键环节。面对成百上千的特征变量,如何高效筛选出真正有价值的特征?Relief系列算法以其直观的权重计算和高效的运行…...

5步快速禁用Windows Defender:使用WSC API的专业解决方案

5步快速禁用Windows Defender:使用WSC API的专业解决方案 【免费下载链接】no-defender A slightly more fun way to disable windows defender. (through the WSC api) 项目地址: https://gitcode.com/GitHub_Trending/no/no-defender 当Windows Defender频…...

Ostrakon-VL-8B零售AI部署实战:5分钟搭建智能巡店系统,支持多角色权限管理

Ostrakon-VL-8B零售AI部署实战:5分钟搭建智能巡店系统,支持多角色权限管理 1. 引言:零售行业的新一代智能巡检方案 想象一下这样的场景:作为连锁零售企业的区域经理,你每天需要查看几十家门店上传的货架照片&#xf…...

从动物行为到工业质检:手把手教你用Deeplabcut 2.3.5搭建自己的关键点检测模型

从动物行为到工业质检:手把手教你用Deeplabcut 2.3.5搭建自己的关键点检测模型 在计算机视觉领域,关键点检测技术正从实验室走向千行百业。最初为动物行为研究设计的Deeplabcut,如今因其开箱即用的易用性和出色的精度,正在制造业、…...

OpenClaw技能扩展实战:用Qwen3.5-9B实现公众号Markdown自动发布

OpenClaw技能扩展实战:用Qwen3.5-9B实现公众号Markdown自动发布 1. 为什么选择OpenClaw做公众号自动化 去年我开始运营技术公众号时,每周最耗时的不是写作本身,而是排版发布这个重复性工作。直到发现OpenClaw这个开源自动化框架&#xff0c…...

C++开发者必看:nlohmann::json实战避坑指南(含性能优化技巧)

C开发者必看:nlohmann::json实战避坑指南(含性能优化技巧) 如果你正在用C处理JSON数据,nlohmann::json库大概率已经出现在你的项目依赖中。这个被戏称为"现代C的瑞士军刀"的库,确实让JSON操作变得像std::vec…...

工业上位机开发实战:基于.NET 6和CIP协议,5分钟搞定与ControlLogix PLC的数据对接

工业上位机开发实战:基于.NET 6和CIP协议快速对接ControlLogix PLC 在工业自动化领域,高效可靠的数据采集系统是智能制造的核心枢纽。本文将带您探索如何利用最新的.NET 6技术栈,在5分钟内构建与罗克韦尔ControlLogix系列PLC的通信桥梁。不同…...

电商API接口数据采集与应用行业分析

电商 API 接口数据采集与应用行业,已从早期的 “数据获取工具” 升级为电商数字化的核心基础设施,正处于合规化、智能化、全链路整合的高速发展期。2025 年中国电商数据服务市场规模约1800 亿元,年复合增长率25%-30%;全球跨境电商…...

CTFSHOW国赛漏洞解析:Unzip软连接攻击实战

1. 漏洞背景与原理剖析 最近在CTFSHOW国赛中出现的Unzip软连接攻击案例,再次提醒我们文件上传功能中隐藏的安全风险。这种攻击方式巧妙利用了Linux系统特性,通过构造特殊压缩包实现目录穿越,最终达到控制服务器的目的。先来看一个典型的漏洞代…...

Oracle 11g在Windows上的快速部署:使用Docker容器简化安装与配置

Oracle 11g容器化部署实战:Windows平台高效开发环境搭建指南 对于需要频繁搭建Oracle测试环境的开发者而言,传统安装方式耗时且容易出错。本文将介绍如何利用Docker技术,在Windows系统上快速部署Oracle 11g数据库,实现开发环境的秒…...

从零开始:GitLab 自托管部署与 DevOps 环境搭建指南

1. 为什么选择自托管 GitLab? 对于中小型技术团队来说,代码管理是研发流程的核心命脉。我见过太多团队在初期使用第三方托管服务,随着业务增长却面临三大痛点:代码安全焦虑、定制化需求无法满足、CI/CD 集成受限。自托管 GitLab 就…...

Eclipse Mosquitto 安全防护实战指南:从漏洞诊断到纵深防御

Eclipse Mosquitto 安全防护实战指南:从漏洞诊断到纵深防御 【免费下载链接】mosquitto eclipse/mosquitto: Eclipse Mosquitto是一个轻量级的消息代理服务器,它支持MQTT协议。它被广泛应用于物联网设备之间的通信。 项目地址: https://gitcode.com/gh…...

Vue 3D轮播插件vue-carousel-3d实战:5分钟打造电商产品展示页

Vue 3D轮播插件vue-carousel-3d实战:5分钟打造电商产品展示页 在电商网站中,产品展示的效果直接影响用户的购买决策。传统的平面轮播图已经难以满足用户对视觉体验的追求,而3D轮播效果能够以更立体的方式展示产品细节,提升用户互动…...

Vue3 + Monaco Editor 避坑指南:手把手教你干掉那个多余的滚动条

Vue3 Monaco Editor 实战:彻底解决编辑器滚动条异常问题 作为一名长期在前端领域深耕的开发者,我最近在Vue3项目中集成Monaco Editor时遇到了一个令人头疼的问题——编辑器在没有内容溢出的情况下,依然显示着碍眼的滚动条。经过一番探索和调…...

PLC编程必备:西门子200SMART符号表与注释的高效使用技巧

PLC编程效率革命:西门子200SMART符号表与注释的进阶实践 在工业自动化领域,PLC编程的可读性和可维护性往往决定了项目的长期成败。许多工程师花费大量时间编写功能代码,却忽视了符号表和注释这一"软实力"的建设。当项目需要升级或故…...

GTE文本向量模型快速上手:无需深度学习基础,一键部署多任务NLP分析工具

GTE文本向量模型快速上手:无需深度学习基础,一键部署多任务NLP分析工具 你是不是觉得自然语言处理(NLP)听起来很高深?是不是看到“文本向量”、“模型微调”这些词就头疼?别担心,今天我要带你体…...

L298N电机驱动模块避坑指南:从选型到实战(附Arduino代码)

L298N电机驱动模块避坑指南:从选型到实战(附Arduino代码) 当你第一次拿到L298N模块时,可能会被它简单的蓝色PCB板迷惑——这个看似普通的模块,实际上藏着不少"坑"。作为创客项目中最常用的电机驱动方案之一&…...

医疗AI实战:用OpenCLIP训练自己的医学影像描述生成模型(附完整代码)

医疗AI实战:用OpenCLIP训练医学影像描述生成模型的全流程解析 当放射科医生面对堆积如山的CT扫描片时,能否有一个AI助手自动生成初步诊断描述?这个看似科幻的场景,正通过多模态深度学习变为现实。本文将手把手带您实现一个能理解医…...

突破性数据增强:如何用Time-Series-Library解决时间序列稀疏性难题

突破性数据增强:如何用Time-Series-Library解决时间序列稀疏性难题 【免费下载链接】Time-Series-Library A Library for Advanced Deep Time Series Models. 项目地址: https://gitcode.com/GitHub_Trending/ti/Time-Series-Library 在时间序列分析领域&…...

如何永久保存QQ空间回忆?GetQzonehistory备份指南

如何永久保存QQ空间回忆?GetQzonehistory备份指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 您是否担心多年的QQ空间说说会随着账号变动而消失?GetQzonehis…...

Audio Flamingo 3:打破模态壁垒的音频智能突破性技术解析

Audio Flamingo 3:打破模态壁垒的音频智能突破性技术解析 【免费下载链接】audio-flamingo-3 项目地址: https://ai.gitcode.com/hf_mirrors/nvidia/audio-flamingo-3 在音频AI领域面临"模态孤岛"困境与长音频理解需求激增的双重挑战下&#xff0…...

STM32 RTC实战:如何用纽扣电池实现断电时间保持(附完整代码)

STM32 RTC实战:如何用纽扣电池实现断电时间保持(附完整代码) 在工业控制、智能仪表和物联网设备中,精确的时间记录往往是系统可靠运行的关键。想象一下,当一台自动化设备突然断电后重启,如果无法准确恢复断…...

图解Uboot FIT Image:its文件里的load、entry地址到底怎么填?(以i.MX8MP为例)

深入解析Uboot FIT Image:i.MX8MP平台its文件地址配置实战指南 当你在i.MX8MP平台上第一次看到FIT Image的its文件时,那些神秘的load和entry地址值是否让你感到困惑?这些看似随意的十六进制数字背后,其实隐藏着嵌入式系统启动过程…...

云边端一体化核心技术:数据同步与边缘智能实现

云边端一体化核心技术:数据同步与边缘智能实现📚 本章学习目标:深入理解数据同步与边缘智能实现的核心概念与实践方法,掌握关键技术要点,了解实际应用场景与最佳实践。本文属于《云原生、云边端一体化与算力基建&#…...

API网关选型指南:从Nginx到Kong的5个关键决策点(含实战代码)

API网关选型指南:从Nginx到Kong的5个关键决策点(含实战代码) 在数字化转型浪潮中,API作为系统间通信的桥梁,其管理效率直接影响业务敏捷性。当团队面临每秒数千次API调用时,选择合适的网关技术栈往往成为架…...

SDMatte镜像国产化适配:昇腾/海光平台移植可行性评估

SDMatte镜像国产化适配:昇腾/海光平台移植可行性评估 1. 项目背景与技术特点 SDMatte是一款专注于高质量图像抠图的AI模型,特别擅长处理复杂边缘和半透明物体的提取任务。该模型在电商、设计、内容创作等领域具有广泛应用价值,能够高效完成…...

OpenCore Legacy Patcher终极指南:从故障排除到高级配置优化

OpenCore Legacy Patcher终极指南:从故障排除到高级配置优化 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher OpenCore Legacy Patcher是一款强大的开源工具&am…...

Llama-3.2V-11B-cot实战教程:Streamlit界面响应延迟优化与调试

Llama-3.2V-11B-cot实战教程:Streamlit界面响应延迟优化与调试 1. 项目背景与问题定位 Llama-3.2V-11B-cot作为新一代多模态大模型,在视觉推理任务中展现出强大的能力。但在实际使用Streamlit构建交互界面时,用户常会遇到响应延迟的问题。本…...