Flutter鸿蒙化(windows)

news2024/9/23 11:22:20

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.coloradmin.cn/o/2157407.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-18

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-18 1. The Application of Large Language Models in Primary Healthcare Services and the Challenges W YAN, J HU, H ZENG, M LIU, W LIANG - Chinese General Practice, 2024 人工智能大语言模型在基层医疗…

软媒市场新探索:软文媒体自助发布,开启自助发稿新篇章

在繁华喧嚣的软媒市场中,每一个声音都在竭力呼喊,每一个品牌都在奋力展现。而软文,作为一种温柔而坚韧的营销力量,正逐渐崭露头角。特别是软文媒体自助发布平台的出现,更是为企业提供了一个全新的、高效的自助发稿渠道。 软媒市场自助发布平台,正如其名,是一个让企业能够自主发…

离职员工客户如何管理?解锁2024企业微信新功能

公司里员工来来去去很正常,但每次有人走,老板们都会头疼,因为客户信息得有人接着管。客户对公司来说太重要了,不能丢。2024年,企业微信出了个新招,就是员工离职后,客户信息可以轻松转给新来的员…

JVM的基本概念

目录 一、JVM的内存划分 二、JVM的类加载过程 三、JVM的垃圾回收机制(GC) 四、分代回收 一、JVM的内存划分 一个运行起来的Java进程,就是一个Java虚拟机,就需要从操作系统中申请一大块内存。申请的内存会划分为不同的区域&…

Maven笔记(一):基础使用【记录】

Maven笔记(一)-基础使用 Maven是专门用于管理和构建Java项目的工具,它的主要功能有: 提供了一套标准化的项目结构 Maven提供了一套标准化的项目结构,所有IDE(eclipse、myeclipse、IntelliJ IDEA 等 项目开发工具) 使…

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-17

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-17 1. Large Language Models in Biomedical and Health Informatics: A Review with Bibliometric Analysis H Yu, L Fan, L Li, J Zhou, Z Ma, L Xian, W Hua, S He… - Journal of Healthcare …, 2024 生物…

HarmonyOS应用开发(组件库)--组件模块化开发、工具包、设计模式(持续更新)

致力于,UI开发拿来即用,提高开发效率 正则表达式...手机号校验...邮箱校验 文件判断文件是否存在 网络下载下载图片从沙箱中图片转为Base64格式从资源文件中读取图片转Base64 组件输入框...矩形输入框...输入框堆叠效果(用于登录使用&#xf…

【自动驾驶】决策规划算法(二)参考线模块Ⅰ| 平滑算法与二次规划

写在前面: 🌟 欢迎光临 清流君 的博客小天地,这里是我分享技术与心得的温馨角落。📝 个人主页:清流君_CSDN博客,期待与您一同探索 移动机器人 领域的无限可能。 🔍 本文系 清流君 原创之作&…

(学习记录)使用 STM32CubeMX——GPIO引脚输入配置

STM32F103C8T6的GPIO引脚输入配置 时钟配置 (学习记录)使用 STM32CubeMX——配置时钟(入门)https://blog.csdn.net/Wang2869902214/article/details/142423522 GPIO 引脚输出配置 (学习记录)使用 STM32…

Springcloud框架-能源管理系统-能源管理系统源码-能源在线监测平台-双碳平台

一、介绍 基于SpringCloud的能管管理系统-能源管理平台源码-能源在线监测平台-双碳平台源码-SpringCloud全家桶-能管管理系统源码 有需者咨询,非诚勿扰; 二、软件架构 二、功能介绍 三、数字大屏展示 四、数据采集原理 五、软件截图

macos pyenv 安装python tk 、tkinter图形库方法步骤和使用总结

在macos中, pyenv 是一款用来管理多版本python 的工具, 我们常用的tk图形库是一个独立的工具库,我们在python里面使用的tkinter模块仅是调用这个独立的tk图形库, 所以如果我们希望在python里面使用它, 就必须要先安装t…

委托的注册及注销+观察者模式

事件 委托变量如果公开出去,很不安全,外部可以随意调用 所以取消public,封闭它,我们可以自己书写两个方法,供外部注册与注销,委托调用在子方法里调用,这样封装委托变量可以使它更安全,这个就叫…

金融加密机的定义与功能

金融加密机是一种用于保护金融交易数据和信息安全的重要安全设备。它通过硬件和软件的多重保障,确保金融交易中的敏感数据不被泄露或篡改。以下是关于金融加密机的详细介绍: 一、定义与功能 金融加密机是一种硬件安全设备,通过实现各种密码算…

深度deepin初体验(一)系统详细安装过程 | 国产系统

这里写自定义目录标题 深度deepin初体验(一)系统详细安装过程1.介绍2.安装要求3.环境4.创建虚拟机/系统升级系统选择语言硬盘分区备份文件拷贝系统重启常规设置 深度deepin初体验(一)系统详细安装过程 1.介绍 深度deepin是在debi…

Python开发深度学习常见安装包 error 解决

Python Python 是一种广泛使用的高级编程语言,它以其清晰的语法和代码可读性而闻名。Python 支持多种编程范式,包括面向对象、命令式、函数式和过程式编程。由于其简洁性和强大的标准库,Python 成为了数据科学、机器学习、网络开发、自动化脚…

气膜馆:新型场馆的盈利之道—轻空间

气膜馆作为一种创新的场馆形式,凭借其先进的技术和灵活的应用,正在快速崛起,展现出广阔的市场前景与丰富的盈利潜力。通过多元化的经营模式,气膜馆为创业者提供了前所未有的商机。本文将深入分析气膜馆的盈利模式及其在市场中的竞…

气膜储煤棚:未来能源管理的新选择—轻空间

在全球对可持续发展与环保的日益重视下,传统的煤炭储存方式面临着诸多挑战。气膜储煤棚应运而生,成为现代煤炭储存的理想解决方案。本文将深入探讨气膜储煤棚的优势与应用,为企业提供新的思路。 先进的技术设计 气膜储煤棚采用创新的气膜技术…

AcWing算法基础课-790数的三次方根-Java题解

大家好,我是何未来,本篇文章给大家讲解《AcWing算法基础课》790 题——数的三次方根。本题考查算法为浮点数二分查找。本文详细介绍了一个使用二分法计算浮点数三次方根的算法。通过逐步逼近目标值,程序能够在给定的区间内精确计算出结果&…

关闭小广告【JavaScript】

在 JavaScript 中实现关闭小广告的功能&#xff0c;可以通过监听点击事件来隐藏广告元素。 实现效果&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8"><meta name"viewport&q…

SpringBoot框架之KOB项目 - 配置Mysql与注册登录模块(中)

修改Spring Security 登录验证模式 传统的验证登录模式 公开页面&#xff1a;输入url就可以直接访问授权页面&#xff1a;登录之后才可以访问 Jwt验证模式 容易实现跨域不需要在服务器端存储 对比于传统模式将所有的sessionId换成jwt token access token refresh token 过…