Flutter鸿蒙化环境配置(windows)
Flutter鸿蒙化环境配置(windows)
- 参考资料
- Window配置Flutter的鸿蒙化环境
- 下载
- 配置环境变量
- HarmonyOS的环境变量配置
- 配置Flutter的环境变量
- Flutter doctor -v 检测的问题
- flutter_flutter仓库地址的警告问题
- Fliutter doctor –v 报错[!] Android Studio (version 2024.1)✗ Unable to find bundled Java version.
- Windows上配置环境问题
- Hvigor Error : BUILD unable to find “DEVECO_SDK_HOME” in the environment path
- Hvigor depends on the npmrc file configure the npmrc file
- 404 GET https://registry.npm.js.org/xxxx not found
- 云桌面无法检测到真机设备的问题
- 执行flutter build hap xxx 报 java ENOENT
- flutter_flutter配置文档上的SDk的问题
- Flutter鸿蒙化对JDK的版本要求
- Mac上环境配置问题集
- 如何配置hdc的路径
参考资料
Flutter SDK 环境的配置参考相 flutter官网(https://docs.flutter.dev/get-started/install)
Flutter鸿蒙化相关参考文档: https://gitee.com/openharmony-sig/flutter_flutter/tree/dev/
注意: 目前Flutter项目鸿蒙化,FlutterSDK的版本只支持3.7.12, Dart支持的版本是2.19.6
Window配置Flutter的鸿蒙化环境
如果是MAC电脑的话, 直接参考上述参考资料配置环境。
下载
- 首先我们需要下载HarmonyOS的套件,并安装相关的编译工具
- 2、 通过代码工具包下载当前仓库代码 git clone https://gitee.com/openharmony-sig/flutter_flutter.git, 并切换到dev分支
配置环境变量
HarmonyOS的环境变量配置
首先我们需要配置harmonyos中的node、ohpm、hvigor、hdc的环境变量, node、ohpm、hvigor这三个都在DevEco Studio软件安装的tools文件加下, 而hdc则是在sdk\HarmonyOS-NEXT-DB1\openharmony\toolchains 目录下。配置环境变量如下图:
同时我们还需要在系统环境变量中增加 HOS_SDK_HOME 也就是harmonyos的SDK的路径
配置Flutter的环境变量
注意:如果你之前有下载官方的FlutterSDK,那么这里配置的flutter_flutter的环境变量一定要在你自己下载的flutterSDK的环境变量之前(flutter_windows_3.7.12-stable\flutter\bin), 如果顺序发生调换, 你在使用flutter doctor –v检测环境时, 无法出现 HarmonyOS 的环境标志
除上述之外,我们还需在系统环境变量中配置一下几个环境变量:PUB_HOSTED_URL = https://pub.flutter-io.cn
FLUTTER_STORAGE_BASE_URL=https://flutter-ohos.obs.cn-south-1.myhuaweicloud.com
使用Flutter doctor –v
检测环境
环境检测通过示例,如下图:
Flutter doctor -v 检测的问题
flutter_flutter仓库地址的警告问题
解决方案:
在系统变量中增加如下环境变量即可解决
FLUTTER_GIT_URL=https://gitee.com/openharmony-sig/flutter_flutter.git
Fliutter doctor –v 报错[!] Android Studio (version 2024.1)✗ Unable to find bundled Java version.
- 首先进入android studio工具的安装目录
- 目录中没有jre目录, 你需要创建一个jre文件夹
- 然后把jbr目录中的所有内容复制到jre文件中
Windows上配置环境问题
Hvigor Error : BUILD unable to find “DEVECO_SDK_HOME” in the environment path
解决方案:
我们需要再系统环境变量中配置以下这个环境变量:
Hvigor depends on the npmrc file configure the npmrc file
原因: 是没有配置.npmrc文件
解决方案:需要该文件存在C盘当前用户目录(示例:C:\Users\issuser)下创建这个文件, 文件的内容是华为npm仓库的地址
404 GET https://registry.npm.js.org/xxxx not found
解决方案:
需要再.npmrc文件中配置下npm的仓库:
registry=https://repo.huaweicloud.com/repository/npm/
@ohos:registry=https://repo.harmonyos.com/npm/
注意:为什么有的需要配置这个,有的不需要配置,是因为有些库只发布到了https://repo.harmonyos.com/npm/
云桌面无法检测到真机设备的问题
- 首先验证云桌面和本地是否在同一网段,可以在云桌面ping 本机的ip地址
- 可以参考文档,使用hdc远程连接到设备: https://docs.openharmony.cn/pages/v4.0/zh-cn/device-dev/subsystems/subsys-toolchain-hdc-guide.md/#hdc-client%E5%A6%82%E4%BD%95%E8%BF%9C%E7%A8%8B%E8%AE%BF%E9%97%AEhdc-server
- 其次本地和云桌面需要配置hdc的环境配置变量
- 注意:Hdc 在sdk的
D:\ProgrameFile\HuaWei\DevEco Studio\sdk\HarmonyOS-NEXT-DB1\openharmony\toolchains
,
D:\ProgrameFile\HuaWei\DevEco Studio:这个示例路劲是指你DevEco Studio的安装包的路径
执行flutter build hap xxx 报 java ENOENT
解决方案:
需要安装openjdk17的环境, 并设置好环境变量, 然后在次执行flutter build指令 即可,Jdk17的安装参考地址
flutter_flutter配置文档上的SDk的问题
这个问题是以前就版本才需要执行的,目前IDE一体化之后就不需要了(IDE 版本5.1.3.300及之后的版本都不在需要执行这个指令。)
Flutter鸿蒙化对JDK的版本要求
- 建议使用JDK的版本是 openjdk17的版本
- 经验证jdk22的版本是会报错
- 至于jdk17以上到22之间的版本, 华为技术回复:
注意:如果需要确切的知道有没有适配, 可能需要找对应的技术人确认
Mac上环境配置问题集
如何配置hdc的路径
- vim ~/.zshrc
- 增加如下export PATH=${PATH}:/Users/用户名/Library/Huawei/Sdk/openharmony/版本/toolchains
- source ~/.zshrc
- hdc version 查看版本如下就可以了
相关文章:

Flutter鸿蒙化环境配置(windows)
Flutter鸿蒙化环境配置(windows) 参考资料Window配置Flutter的鸿蒙化环境下载配置环境变量HarmonyOS的环境变量配置配置Flutter的环境变量Flutter doctor -v 检测的问题flutter_flutter仓库地址的警告问题Fliutter doctor –v 报错[!] Android Studio (v…...
Vue入门之生命周期
文章目录 一、Vue 生命周期概述二、生命周期的四个阶段1. 创建阶段2. 挂载阶段3. 更新阶段4. 销毁阶段 三、代码案例四、总结 在 Vue 开发中,理解生命周期是非常重要的。Vue 的生命周期可以帮助我们在不同的阶段执行特定的逻辑,从而更好地控制组件的行为…...

UNI-SOP应用场景(1)- 纯前端预开发
在平时新项目开发中,前端小伙伴是否有这样的经历,hi,后端小伙伴们,系统啥时候能登录,啥时候能联调了,这是时候往往得到的回答就是,再等等,我们正在搭建系统呢,似曾相识的…...
力扣9.23
1014. 最佳观光组合 给你一个正整数数组 values,其中 values[i] 表示第 i 个观光景点的评分,并且两个景点 i 和 j 之间的 距离 为 j - i。 一对景点(i < j)组成的观光组合的得分为 values[i] values[j] i - j ,…...
[Redis][事务]详细讲解
目录 0.什么是事务?1.Redis 事务本质2.Redis 事务意义3.事务操作1.MULTI2.EXEC3.DISCARD4.WATCH5.UNWATCH 0.什么是事务? Redis的事务和MySQL的事务概念上是类似的,都是把一系列操作绑定成一组,让这一组能够批量执行Redis事务和M…...

Latex——一行的划线 如何分开
代码: \cmidrule(r){3-4} \cmidrule(r){5-6} \cmidrule(r){7-8}效果: 参考文章: LaTeX技巧653:如何隔开LaTeX表格邻近\cline表格线?...

大数据:快速入门Scala+Flink
一、什么是Scala Scala 是一种多范式编程语言,它结合了面向对象编程和函数式编程的特性。Scala 这个名字是“可扩展语言”(Scalable Language)的缩写,意味着它被设计为能够适应不同规模的项目,从小型脚本到大型分布式…...

侧边菜单的展开和折叠
环境准备:Vue3Element-UI Plus <script setup> import {ref} from "vue";// 是否折叠菜单,默认折叠 const isCollapse ref(true)</script><template><el-container><el-aside><el-menu:collapse"isCo…...
自动化办公-Python中的for循环
for 循环是 Python 中用于迭代(遍历)序列(如列表、元组、字典、集合、字符串)或其他可迭代对象的控制结构。它允许您逐一访问序列中的每个元素,并对其执行操作。以下是对 for 循环的详细介绍,包括语法、使用…...
Python_itertools
itertools itertools.count(start, step) 返回一个无限迭代器,从指定的start开始,每次增加step。 import itertools # 从1开始,每次增加1,输出前5个数 for i in itertools.count(1, 1):if i > 5:breakprint(i)运行结果&#…...

Apache Iceberg 数据类型参考表
Apache Iceberg 概述-链接 Apache Iceberg 数据类型参考表 数据类型描述实例方法注意事项BOOLEAN布尔类型,表示真或假true, false用于条件判断,例如 WHERE is_active true。确保逻辑条件的正确性。INTEGER32位有符号整数42, -7可用于计算、聚合…...
职责链模式
职责链模式 责任链(Chain of Responsibility)模式:为了避免请求发送者与多个请求处理者耦合在一起,于是将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这…...

新品 | Teledyne FLIR IIS 推出Forge 1GigE SWIR 短波红外工业相机系列
近日,51camera的合作伙伴Teledyne FLIR IIS推出了新品Forge 1GigE SWIR 130万像素的红外相机。 Forge 1GigE SWIR系列的首款相机配备宽频带、高灵敏度的Sony SenSWIR™️ 130万像素IMX990 InGaAs传感器。这款先进的传感器采用5um像素捕捉可见光和SWIR光谱ÿ…...
深入MySQL:掌握索引、事务、视图、存储过程与性能优化
在掌握了MySQL的基本操作之后,你可能会遇到更复杂的数据管理和优化需求。本文将介绍一些MySQL的进阶特性,包括索引、事务、视图、存储过程和函数、以及性能优化等内容。通过学习这些高级功能,你可以更高效地管理和优化你的数据库。 索引 索…...
【WSL——Windows 上使用 Linux 环境】
引入 以前在windows上使用linux工具链,一般都要安装虚拟机(VMware/virtualBox)。虚拟机的缺点是,因为是完整的虚拟环境,消耗系统资源比较多。 windows自己开发了WSL功能,实现了虚拟机的功能,但是比虚拟机性…...

Redis:事务
什么是Redis事务 Redis 事务的本质是一组命令的集合。事务支持一次执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令序列中。 总结说&…...
策略模式的介绍和具体实现
❤ 作者主页:李奕赫揍小邰的博客 ❀ 个人介绍:大家好,我是李奕赫!( ̄▽ ̄)~* 🍊 记得点赞、收藏、评论⭐️⭐️⭐️ 📣 认真学习!!!🎉🎉 文章目录 策略接口三种…...

MySQL InnoDB MVCC数据结构分析
1、概述 MVCC(Multiversion Concurrency Control)多版本并发控制,通过维护不同的版本号,提供一种很好的并发控制技术,这种技术能够使读写操作不冲突,提升并发性能。 MySQL InnoDB存储引擎,在更…...
MySQL 8 查看 SQL 语句的执行进度
目录 1. 查询各阶段执行进度 (1)开启收集与统计汇总执行阶段信息的功能 (2)确定执行的SQL所属的thread_id (3)查询各阶段的执行进度 2. 查询SQL语句的整体执行进度 1. 查询各阶段执行进度 ࿰…...
OpenStack 部署实践与原理解析 - Ubuntu 22.04 部署 (DevStack)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言OpenStack 原理详解1. OpenStack 的架构2. OpenStack 的工作原理3. OpenStack 的 API4. 扩展性和模块化 OpenStack 安装方式比较1. DevStack2. Kolla3. OpenSta…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...

dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

HBuilderX安装(uni-app和小程序开发)
下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...

vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

C++使用 new 来创建动态数组
问题: 不能使用变量定义数组大小 原因: 这是因为数组在内存中是连续存储的,编译器需要在编译阶段就确定数组的大小,以便正确地分配内存空间。如果允许使用变量来定义数组的大小,那么编译器就无法在编译时确定数组的大…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...