鸿蒙开发搭建flutter适配的开发环境

 更新时间:2024年12月28日 10:49:25   作者:hairuizhi  
文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutter doctor检测环境、创建项目、编译HAP包以及在真机上运行项目,打包鸿蒙Flutter应用的测试包和正式包的方法,并介绍了常见问题的解决方法

环境搭建

1.安装 DevEco Studio NEXT IDE

注意版本应该是 Next,当前最新的是 Beta3 .下载之前需要先登录,后面的模拟器创建还要开发者验证、审核啥的,好在审核进度还可以,我这边提交申请后差不多两个小时审核通过 .找到自己电脑系统匹配的版本下载,我的电脑是Window的就选择Window版本下载 .安装步骤比较简单,一步步next直到完成即可,新版本的工具已经集成node和ohpm等环境进去了,不用单独下载安装了

2.安装Git

如果要同时适配安卓,需要安装Android Studio; 如果要适配ios,需要安装Xcode

Mac 安装(推荐) 环境变量配置

# Flutter Mirror
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

# HarmonyOS SDK
export TOOL_HOME=/Applications/DevEco-Studio.app/Contents/
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

Windows 安装 配置用户变量

FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
PUB_HOSTED_URL=https://pub.flutter-io.cn
DEVECO_SDK_HOME=C:\Program Files\Huawei\DevEco Studio\sdk

配置环境变量 编辑 PATH,添加以下路径

C:\Program Files\Huawei\DevEco Studio\tools\ohpm\bin
C:\Program Files\Huawei\DevEco Studio\tools\hvigor\bin
C:\Program Files\Huawei\DevEco Studio\tools\node

管理多个 Flutter 版本 如果在项目开发中,需要使用多个 Flutter 版本,可以考虑使用 fvm 1.安装 FVM 2.使用 fvm 官方 flutter 版本 fvm install 3.22.0 3.安装自定义鸿蒙版本,进入 fvm/version 目录,通常位于用户目录下,如 ~/fvm/versions/3.22.0, 拷贝仓库并重命名为 custom_x.y.z的名字 git clone -b dev https://gitee.com/openharmony-sig/flutter_flutter.git custom_3.7.12 4.在项目中使用单独的 flutter sdk 版本, 在项目目录中执行: fvm use custom_3.7.12

创建运行项目

1.检测flutter

创建鸿蒙运用条件是否可以了 运行flutter doctor -v检查环境变量配置是否正确

[✓] HarmonyOS toolchain - develop for HarmonyOS devices
    • OpenHarmony Sdk at E:\ohos\DevEcoStudio\sdk, available api versions has [12:default]
    • Ohpm version 5.0.8-rc.1    #如果这里报x错误,说明上面的`PATH变量添加值 %TOOL_HOME%\tools\ohpm\bin`添加的环境变量ohpm的路径配置有问题
    • Node version v18.20.1      #如果这里报x错误,类似PATH配置的node路径有问题
    • Hvigorw binary at E:\ohos\DevEcoStudio\tools\hvigor\bin\hvigorw   #如果这里报x错误,类似PATH配置的hvigor路径有问题

2. 创建flutter项目

创建工程 方式一 该方式只创建了ohos平台 flutter create --platforms ohos 进入工程根目录编译hap包,创建完项目之后,要先执行这步build才能生成依赖,如果直接使用DevEcho Studio打开会报错找不到flutter.har依赖库flutter build hap --debug

3. 运行flutter项目到鸿蒙next手机

方式一:通过flutter devices指令发现真机设备之后,获取device-id,进入项目目录指定构建方式编译hap包并安装到鸿蒙手机中 flutter run --debug -d

flutter devices
  flutter run --debug -d <deviceId>

方式二:进入工程根目录编译hap包,然后安装到鸿蒙手机中

flutter build hap --debug
  hdc -t <deviceId> install <hap file path>    # 类似Android的adb安装:adb -s <deviceId> install <apk file path>

方式三:使用DevEcoStudio打开项目的ohos模块

  1. File --> Project Structure --> Signing Configs --> 勾选Automatically generate signature --> Apply ,可以启用启动签名,第一次执行flutter build hap的时候也会提示到
  2. 创建模拟器:Device Manager --> 进去根据提示可以插件模拟器,不过第一次创建还需要进行开发者验证以及审核。。。
  3. 重点提示一下:创建的模拟器只有x86架构的,而这篇文章我们通过flutter_flutter构建的支持鸿蒙的flutter运用只支持arm64架构的,人家文档也说明了,所以啊其实创建模拟器对flutter应用也没啥用,#要真机运行

打包项目

1. 打包测试包

flutter build hap --debug

如果需要指定engine的话,使用--local-engine参数 使用flutter build hap --debug --local-engine=E:\ohos\flutter_image\src\out\ohos_debug_unopt_arm64,会提示失败src\out\ohos_debug_unopt_arm64\flutter.har找不到 如果提示flutter.har找不到,那就是从项目目录下的ohos\har\flutter.har拷贝一份到src\out\ohos_debug_unopt_arm64目录下,然后再执行上一步就能成功

2. 打包正式包

flutter build hap --release 或者 flutter build hap

如果需要指定engine的话,使用--local-engine参数 比如flutter build hap --release --local-engine=E:\ohos\flutter_image\src\out\ohos_release_arm64,会提示失败src\out\ohos_release_arm64\flutter.har找不到 如果提示flutter.har找不到,那就是从项目目录下的ohos\har\flutter.har拷贝一份到src\out\ohos_release_arm64目录下,然后再执行上一步就能成功

常见问题

运行 flutter doctor 出现 Error: Unable to find git in your PATH. 执行以下命令

git config --global --add safe.directory '*'

总结

到此这篇关于鸿蒙开发搭建flutter适配的开发环境的文章就介绍到这了,更多相关鸿蒙搭建flutter开发环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • DataGrip 2020.1 安装与激活方法

    DataGrip 2020.1 安装与激活方法

    DataGrip是一款数据库管理客户端工具,方便连接到数据库服务器,执行sql、创建表、创建索引以及导出数据等。这篇文章主要介绍了DataGrip 2020.1 安装与激活教程,需要的朋友可以参考下
    2020-09-09
  • ArcGIS Pro 按照字段进行融合或拆分的操作步骤

    ArcGIS Pro 按照字段进行融合或拆分的操作步骤

    ArcGIS Pro 是 Esri 提供的功能全面的专业桌面 GIS 应用程序,这篇文章主要介绍了ArcGIS Pro 按照字段进行融合或拆分,需要的朋友可以参考下
    2024-02-02
  • 使用八爪鱼采集器采集滚动加载和点击加载数据的教程

    使用八爪鱼采集器采集滚动加载和点击加载数据的教程

    现在很多网站的列表,需要向下滚动页面,才能加载出新数据。或者点击“查看更多”加载新数据。使用广泛的火车头采集器相对无力,使用八爪鱼采集器可以采集滚动刷新和点击刷新。
    2023-05-05
  • 关于jenkins插件下载失败的解决方法

    关于jenkins插件下载失败的解决方法

    这篇文章主要介绍了关于jenkins插件下载失败的解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • DeepSeek R1 Ollama本地化部署全攻略

    DeepSeek R1 Ollama本地化部署全攻略

    本文主要介绍了DeepSeek R1 Ollama本地化部署全攻略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-03-03
  • Appium的使用与入门(这款神器你值得拥有)

    Appium的使用与入门(这款神器你值得拥有)

    这篇文章主要介绍了Appium的使用与入门(这款神器你值得拥有),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • 好用的VSCode头部注释插件Fileheader Pro

    好用的VSCode头部注释插件Fileheader Pro

    这篇文章主要为大家介绍了VSCode头部注释插件Fileheader Pro的使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • vscode使用nuget包管理工具

    vscode使用nuget包管理工具

    这篇文章介绍了vscode使用nuget包管理工具的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • 通过lms.samples熟悉lms微服务框架的使用详解

    通过lms.samples熟悉lms微服务框架的使用详解

    这篇文章主要介绍了通过lms.samples熟悉lms微服务框架的使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • 详解使用内网穿透工具Ngrok代理本地服务

    详解使用内网穿透工具Ngrok代理本地服务

    本文主要介绍了使用内网穿透工具Ngrok代理本地服务,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-03-03

最新评论