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

鸿蒙接入flutter环境变量配置windows-命令行或者手动配置-到项目的创建-运行demo项目

鸿蒙接入flutter环境变量配置

参考官网

下载flutter
git clone https://gitcode.com/openharmony-sig/flutter_flutter.git
git checkout -b dev origin/dev

# 国内镜像
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn# 拉取下来的flutter_flutter/bin目录
export PATH=/Users/admin/ohos/flutter_flutter/bin:$PATH# OpenHarmony SDK
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
export HDC_HOME=$TOOL_HOME/sdk/default/openharmony/toolchains # hdc指令(可选)# 可选配置项(使用Android Studio 或者 Visual Studio Code调试时需要配置此项,jdk版本为17.0.12)
JAVA_HOME=/Users/admin/Documents/JDK/jdk-17.0.12.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
export JAVA_HOME
export PATH# 可选配置项(防止由于Flutter OpenHarmony版的git下载地址环境变量不匹配,影响后续的flutter项目创建)
export FLUTTER_GIT_URL=https://gitcode.com/openharmony-sig/flutter_flutter.git# 非必选配置项(若command-line-tools目录下的tool文件里存在node环境,则无需配置,若无则可进行如下单独配置)
# export NODE_HOME=/Users/admin/node/node-18.14.1
# export PATH=$PATH:$NODE_HOME/bin

在 Windows 系统中,可以通过系统环境变量设置或在命令提示符(CMD)、PowerShell 中临时设置来实现类似的配置。以下分别介绍不同设置方式的具体代码:
通过系统环境变量设置
打开系统属性:在桌面上右键点击 “此电脑”,选择 “属性”,然后点击 “高级系统设置”,在弹出的窗口中点击 “环境变量” 按钮。
添加或修改环境变量:
PUB_HOSTED_URL 和 FLUTTER_STORAGE_BASE_URL:在系统变量中新建 “PUB_HOSTED_URL”,值为 “https://pub.flutter-io.cn”;新建 “FLUTTER_STORAGE_BASE_URL”,值为 “https://storage.flutter-io.cn”。
Flutter SDK 路径:找到 “Path” 变量,点击 “编辑”,新建一项添加 Flutter 的bin目录路径,例如 “C:\Users\admin\ohos\flutter_flutter\bin”。
OpenHarmony SDK 相关路径:

新建 “TOOL_HOME” 变量,值为 “C:\Program Files\DevEco-Studio\Contents”(根据实际安装路径修改)。
新建 “DEVECO_SDK_HOME” 变量,值为 “% TOOL_HOME%\sdk”。
编辑 “Path” 变量,分别添加 “% TOOL_HOME%\tools\ohpm\bin”、“% TOOL_HOME%\tools\hvigor\bin”、“% TOOL_HOME%\tools\node\bin”。如果需要使用 “hdc” 指令,新建 “HDC_HOME” 变量,值为 “% TOOL_HOME%\sdk\default\openharmony\toolchains”。
JDK 路径:新建 “JAVA_HOME” 变量,值为 “C:\Users\admin\Documents\JDK\jdk - 17.0.12.jdk\Contents\Home”(根据实际 JDK 安装路径修改),然后编辑 “Path” 变量,添加 “% JAVA_HOME%\bin”。
Flutter OpenHarmony 版仓库地址:新建 “FLUTTER_GIT_URL” 变量,值为 “https://gitcode.com/openharmony-sig/flutter_flutter.git”。
Node.js 路径(可选):如果需要单独配置 Node.js 路径,新建 “NODE_HOME” 变量,值为 “C:\Users\admin\node\node - 18.14.1”(根据实际安装路径修改),然后编辑 “Path” 变量,添加 “% NODE_HOME%\bin” 。

在window配置环境变量

set PUB_HOSTED_URL=https://pub.flutter-io.cn
set FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
set PATH=C:\Users\admin\ohos\flutter_flutter\bin;%PATH%  // 修改成从下载的flutter路径
set TOOL_HOME=C:\Program Files\DevEco-Studio\Contents  // 修改成DevEco-Studio安装路径
set DEVECO_SDK_HOME=%TOOL_HOME%\sdk      
set PATH=%TOOL_HOME%\tools\ohpm\bin;%TOOL_HOME%\tools\hvigor\bin;%TOOL_HOME%\tools\node\bin;%PATH%
set HDC_HOME=%TOOL_HOME%\sdk\default\openharmony\toolchains
set JAVA_HOME=C:\Users\admin\Documents\JDK\jdk-17.0.12.jdk\Contents\Home   // 修改成jdk17路径
set PATH=%JAVA_HOME%\bin;%PATH%
set FLUTTER_GIT_URL=https://gitcode.com/openharmony-sig/flutter_flutter.git
rem 以下为可选的Node.js配置
set NODE_HOME=C:\Users\admin\node\node-18.14.1   // 修改成node路径
set PATH=%PATH%;%NODE_HOME%\bin

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下载/jdk-17并安装环境

压缩包:https://download.oracle.com/java/17/archive/jdk-17.0.12_windows-x64_bin.zip (sha256)

检查环境

flutter doctor -v

在这里插入图片描述

创建项目

flutter create flutter_ohos_app //创建了android,ios,ohos三个平台

进入工程根目录编译hap包-前提是签名有了

flutter build hap --debug

创建工程与编译命令,编译产物在 ${projectName}/ohos/entry/build/default/outputs/default/entry-default-signed.hap 下。

进入编辑器编译-配置签名

在这里插入图片描述
在这里插入图片描述

demo项目完成了

在这里插入图片描述

相关文章:

  • MATLAB Simulink在Autosar和非Autosar工程下的开发流程
  • AI智能分析网关V4助力工厂/工地/车间/能源矿山场景玩手机行为精准检测与安全生产智能化监管
  • Python(1) 做一个随机数的游戏
  • LeetCode 648 单词替换题解
  • 第九届御网杯网络安全大赛初赛WP
  • [Java][Leetcode middle] 45. 跳跃游戏 II
  • 开发与AI融合的Windsurf编辑器
  • Linux学习心得问题整理(一)
  • MySQL——数据类型表的约束
  • 设计模式深度解析:AI大模型下的策略模式与模板方法模式对比解析
  • Kafka Go客户端--Sarama
  • OpenCV进阶操作:风格迁移以及DNN模块解析
  • 基于STM32、HAL库的TDA7719TR音频接口芯片驱动程序设计
  • 基于Win在VSCode部署运行OpenVINO模型
  • MySQL 8.0 OCP 1Z0-908 题目解析(2)
  • 基于STM32、HAL库的ADAU1701JSTZ音频接口芯片驱动程序设计
  • Windows部署LatentSync唇形同步(字节跳动北京交通大学联合开源)
  • 仓颉Magic亮相GOSIM AI Paris 2025:掀起开源AI框架新热潮
  • 初始“协议”
  • golang 定时器
  • 小米SU7 Ultra风波升级:数百名车主要求退车,车主喊话雷军“保持真诚”
  • 27岁杨阳拟任苏木镇党委副职,系2020年内蒙古自治区选调生
  • 民企老板被错羁212天续:申请国赔千万余元,要求恢复名誉赔礼道歉
  • 美国“贸易战”前线的本土受害者:安静的洛杉矶港和准备关门的小公司
  • 默茨首访聚焦欧洲,欲推欧洲防务自主
  • 中美会谈前都发生了什么?美方为何坐不住了?