鸿蒙接入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配置环境变量

cmd 复制代码
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项目完成了

相关推荐
麻芝汤圆10 分钟前
MapReduce 入门实战:WordCount 程序
大数据·前端·javascript·ajax·spark·mapreduce
幽蓝计划2 小时前
鸿蒙跨平台开发教程之Uniapp布局基础
harmonyos
Peter 谭2 小时前
React Hooks 实现原理深度解析:从基础到源码级理解
前端·javascript·react.js·前端框架·ecmascript
半青年4 小时前
华为鸿蒙电脑能否作为开发机?开发非鸿蒙应用?
ide·华为·编辑器·电脑·idea·harmonyos·visual studio
乌夷4 小时前
axios结合AbortController取消文件上传
开发语言·前端·javascript
程序猿阿伟5 小时前
《React Native与Flutter:社交应用中用户行为分析与埋点统计的深度剖析》
flutter·react native·react.js
wuyijysx6 小时前
JavaScript grammar
前端·javascript
几道之旅7 小时前
分别在windows和linux上使用curl,有啥区别?
linux·运维·windows
bestadc7 小时前
鸿蒙 核心与非核心装饰器
harmonyos