当前位置:首页 > 技术 > 正文内容

基于 OpenHarmony 的 Flutter 开发环境配置与项目构建指南

访客 技术 2026年6月25日 1

硬件与基础软件要求

在开始 OpenHarmony 平台的 Flutter 开发之前,需要确保开发机满足以下基础条件:

  • 操作系统:Windows 10 或 Windows 11(64位架构)。
  • 内存配置:最低 8GB,建议 16GB 及以上以保证编译流畅度。
  • 存储空间:预留至少 50GB 的可用磁盘容量。
  • 基础工具:Git (v2.20+)、Node.js (v14+) 以及最新版的 DevEco Studio。

配置 HarmonyOS 开发工具链

获取并安装 DevEco Studio

前往华为开发者联盟官网的下载中心,获取最新稳定版的 DevEco Studio 并完成安装。

DevEco Studio 下载页面

初始化 OpenHarmony SDK

启动 DevEco Studio 后,通过顶部菜单栏依次选择 File -> Settings -> HarmonyOS SDK。在 SDK 管理界面中,勾选并下载 OpenHarmony SDK(建议选择 6.0.0 或更高版本)。请务必记下 SDK 的本地存储路径,例如 E:\DevTools\HarmonySDK,后续配置环境变量时会用到。

部署 OpenHarmony 专属 Flutter SDK

拉取定制版 Flutter 源码

打开终端工具,切换到你打算存放 SDK 的工作目录(例如 E:\DevTools\FlutterOHOS),执行以下 Git 命令拉取 OpenHarmony 适配分支:

# 克隆 OpenHarmony 适配的 Flutter 仓库
git clone -b oh-3.35.7-dev https://atomgit.com/openharmony-tpc/flutter_flutter.git openharmony_flutter

注入系统环境变量

为了让系统能够全局识别 Flutter 命令及鸿蒙相关工具,需要配置系统环境变量。

1. 将 Flutter 的 bin 目录(如 E:\DevTools\FlutterOHOS\openharmony_flutter\bin)追加到系统的 Path 变量中。

环境变量 Path 配置

追加工具链路径

2. 新建一个名为 DEVECO_SDK_HOME 的系统变量,其值设置为前文记录的 HarmonyOS SDK 路径。

3. 继续向 Path 变量中追加以下鸿蒙工具链目录(请根据实际安装路径调整):

E:\DevTools\HarmonySDK\default\openharmony\toolchains
E:\DevTools\HarmonySDK\..\tools\ohpm\bin
E:\DevTools\HarmonySDK\..\tools\hvigor\bin
E:\DevTools\HarmonySDK\..\tools\node

校验开发环境

验证 Flutter 版本

重新打开一个终端窗口,输入以下命令查看版本信息:

flutter --version

确保输出的版本号中包含 OpenHarmony 相关的分支标识。

执行环境诊断

运行深度诊断命令来检查各项依赖是否就绪:

flutter doctor -v

flutter doctor 输出结果

重点观察 HarmonyOS 工具链和 OpenHarmony 环境的状态。如果显示为 OK,则说明配置成功;若出现缺失提示,请根据终端给出的修复建议安装相应的组件(如 ohpm 或 hvigor)。

项目创建与模拟器调试

启动虚拟设备

回到 DevEco Studio,打开 Device Manager(设备管理器),创建并启动一个 HarmonyOS 虚拟模拟器,以便后续进行 UI 预览和调试。

设备管理器界面

模拟器启动

初始化 Flutter 工程

在终端中,使用以下命令生成支持 OpenHarmony 平台的 Flutter 项目骨架。编译后的 HAP 包将输出在 ohos/entry/build/default/outputs/default/ 目录下。

# 仅生成 OpenHarmony 平台的项目结构
flutter create --platforms ohos ohos_flutter_app

# 或者同时生成 Android、iOS 和 OpenHarmony 多平台结构
flutter create multi_platform_app

# 进入项目目录并构建 Debug 版本的 HAP 包
cd ohos_flutter_app
flutter build hap --debug

配置应用签名

在真机或某些模拟器环境下运行应用前,需要在 DevEco Studio 中为项目配置调试签名证书,确保应用具备合法的运行权限。

项目签名配置界面

部署与运行应用

识别目标设备

在终端执行设备列表查询命令:

flutter devices

终端会输出当前连接的所有物理设备和模拟器。例如,127.0.0.1:5555 通常代表本地运行的 HarmonyOS 模拟器。

推送并启动应用

进入 Flutter 项目的根目录,使用 -d 参数指定目标设备 ID 来运行项目:

# 使用指定的设备 ID 运行 Debug 模式
flutter run --debug -d 127.0.0.1:5555

确认运行状态

部署完成后,模拟器或真机屏幕上将自动拉起应用,展示 Flutter 默认的计数器交互界面,至此环境搭建与基础运行流程全部打通。

应用运行成功界面

常见异常排查

  • 代码拉取缓慢:若 Git 克隆速度过慢,可尝试切换至 Gitee 镜像源或配置全局代理。
  • 签名构建失败:检查 DevEco Studio 是否已正确生成并应用了调试证书,确保签名配置无遗漏。
  • SDK 版本冲突:核对 build-profile.json5 中的 targetSdkVersioncompileSdkVersion,保持两者版本一致。
  • 命令行工具丢失:若提示找不到 ohpmhvigor,请重新核对 Path 环境变量中的路径拼写及 DEVECO_SDK_HOME 的指向。
标签: Flutter

相关文章

Linux crontab 详解

1) crontab 是什么cron 是 Linux 的定时任务守护进程;crontab 是用来编辑/查看“按时间周期执行命令”的表(cron table)。常见两类:用户 crontab:每个用户一份(crontab -e 编辑)系统级 crontab / cron.d:可指定执行用户(/etc/crontab、/etc/cron.d/*)2) crontab 时间...

富文本里可以允许的 HTML 属性

一、所有标签默认允许的安全属性(极少)class        (可选)id           (通常建议禁用)title️ 注意:id 容易被滥用做锚点注入,很多系统直接禁用class 允许的话最好只允许固定前缀(如 editor-*)二、a 标签允许属性<a href="" t...

Mac 安装 Node.js 指南

方法一:通过官网安装包(最简单,适合初学者)如果你只是想快速安装并开始使用,这是最直接的方法。访问 Node.js 官网。页面会显示两个版本:LTS (Recommended For Most Users):长期支持版,最稳定。建议选这个。Current:最新特性版,包含最新功能但可能不够稳定。下载 .pkg 安装包并运行。按照安装向导点击“下一步”即可完成。方法二:使用 Homebrew 安装(...

Dom\HTML_NO_DEFAULT_NS 的副作用:自动加闭合标签

在使用Dom\HTMLDocument时,Dom\HTML_NO_DEFAULT_NS 将禁止在解析过程中设置元素的命名空间, 此设置是为了与DOMDocument向后兼容而存在的。当使用它时,已知的一个副作用就是:自动加闭合标签例如 </img> 为什么会这样?当你使用:Dom\HTML_NO_DEFAULT_NS文档会变成 无命名空间模式,此时内部更接近 XML...

Laravel 事件和监听器创建

在 Laravel 中,使用 Artisan 命令创建 Events(事件) 和 Listeners(监听器) 是非常高效的。你可以通过以下几种方式来实现:1. 手动创建单个 Event如果你只想创建一个事件类,可以使用 make:event 命令:Bashphp artisan make:event UserRegistered执行后,文件将生成在 app/Even...

自定义域名解析神器 dnsmasq

什么是 dnsmasq?dnsmasq 是一个轻量级、功能强大的网络服务工具,专为小型和中等规模网络设计。它是一个综合的网络基础设施解决方案[1]。dnsmasq 能做什么?功能说明应用场景DNS 转发与缓存将 DNS 查询转发到上游服务器(ISP、Google DNS 等),并在本地缓存结果加快 DNS 查询速度,减少外部 DNS 流量本地 DNS解析本地网络设备的主机名,无需编辑&n...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。