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

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电脑的话, 直接参考上述参考资料配置环境。

下载

  1. 首先我们需要下载HarmonyOS的套件,并安装相关的编译工具
  2. 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.

在这里插入图片描述

  1. 首先进入android studio工具的安装目录
  2. 目录中没有jre目录, 你需要创建一个jre文件夹
  3. 然后把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/

云桌面无法检测到真机设备的问题

  1. 首先验证云桌面和本地是否在同一网段,可以在云桌面ping 本机的ip地址
  2. 可以参考文档,使用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
  3. 其次本地和云桌面需要配置hdc的环境配置变量
    在这里插入图片描述
  4. 注意: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的版本要求

  1. 建议使用JDK的版本是 openjdk17的版本
  2. 经验证jdk22的版本是会报错
  3. 至于jdk17以上到22之间的版本, 华为技术回复:
    在这里插入图片描述
    注意:如果需要确切的知道有没有适配, 可能需要找对应的技术人确认

Mac上环境配置问题集

如何配置hdc的路径

  1. vim ~/.zshrc
  2. 增加如下export PATH=${PATH}:/Users/用户名/Library/Huawei/Sdk/openharmony/版本/toolchains
  3. source ~/.zshrc
  4. hdc version 查看版本如下就可以了

http://www.kler.cn/news/321693.html

相关文章:

  • 网站设计中安全方面都需要有哪些考虑
  • 【opencv】——为arm平台交叉编译
  • Apache Iceberg 数据类型参考表
  • URL中 / 作为字符串,而不是路径。
  • 19.1 使用k8s的sdk编写一个项目获取pod和node信息
  • 【毕业论文+源码】如何使用Spring Boot搭建一个简单的篮球论坛系统
  • 企业急于采用人工智能,忽视了安全强化
  • Linux云计算 |【第四阶段】NOSQL-DAY3
  • ubuntu 24搭建docker私有仓库
  • 【图像处理】多幅不同焦距的同一个物体的平面图象,合成一幅具有立体效果的单幅图像原理(二)
  • 通过python脚本采集TCP自定义端口连接数数据推送到Prometheus
  • 【azure-openai】批量翻译demo【python】【gradio】
  • 流浪软件uniaccess agent 删除
  • Webpack、Rollup、Parcel 和 Grunt、Gulp 的区别
  • 【理解 Java 中的 for 循环】
  • 【RabbitMQ 项目】服务端:信道模块
  • Java调用第三方接口、http请求详解,一文学会
  • Sqlserver事务行版本控制指南
  • 面向pymupdf4llm与MinerU 面试题
  • OpenHarmony(鸿蒙南向)——平台驱动指南【HDMI】
  • 倾斜单体化重建异形和异形建筑思路整理
  • 力扣583-两个字符串的删除操作(Java详细题解)
  • Spring Boot的核心技术有哪些?
  • AIGC引领数智未来:企业架构演进的深度解析与实践路径,The Open Group 2024生态系统架构·可持续发展年度大会专题报道
  • 深入理解 CompletableFuture 的底层原理
  • 使用npm link 把一个本地项目变成依赖,引入到另一个项目中
  • xlsx库插件读取excel文件
  • 在使用 Docker 时,用户可能会遇到各种常见的错误和问题
  • 使用python进行自然语言处理的示例
  • jmeter-请求参数加密-MD5加密