【HarmonyOS NEXT】HarmonyOS 和 Flutter混合开发 (一)之鸿蒙Flutter环境安装

【HarmonyOS NEXT】HarmonyOS 和 Flutter混合开发 (一)之鸿蒙Flutter环境安装

一、前言

flutter作为开源适配框架方案,已经在Android,IOS,Web,Window四大平台进行了适配,一套代码,可以同时展现在多个平台。所以Flutter适配鸿蒙也正式发布了。经过了今年的迭代,已经逐渐稳定中,虽然没有RN框架在鸿蒙上的适配速度快,但是也可以商用了。

关于Flutter跨平台方案的性能,可以参考这篇文章:跨平台为何选择Flutter

二、混合开发环境安装

使用flutter开发HarmonyOS,需要分别安装这两个的开发环境,鸿蒙环境安装略过了。详情可以参照之前的博客安装步骤:鸿蒙应用开发环境安装和配置

目前鸿蒙 Flutter的环境还是有映射匹配的关系:需要使用 API12, deveco-studio-5.0 或 command-line-tools-5.0,安装鸿蒙时需要注意。

flutter环境单独安装,可参考这篇文章:Flutter 第二章 环境安装

1. 下载JDK环境
在鸿蒙中的flutter的安装与单独安装大同小异。首先需要安装java环境。即: JDK 17下载官网链接

以window举例:
在这里插入图片描述
选择对应的设备型号下载链接后,再下面这个弹框中,勾选同意,才能点击下载按钮。
在这里插入图片描述
需要注意的是,现在Oracle官网下载JDK需要注册用户了。使用邮箱注册即可。

下载时,有可能遇到下载链接后,提示400,请求头cookie过大。此时更换浏览器为隐私模式,再重新去官网链接下载即可。
在这里插入图片描述
在这里插入图片描述
2.进行JDK环境安装
点击下载后的exe安装包,傻瓜式安装即可。
在这里插入图片描述
注意,默认安装在C盘。提前在其他盘创建好文件夹,粘贴到更改路径里,然后点击下一步安装。等待安装完成。
在这里插入图片描述
安装完成后,直接通过命令验证版本:
在这里插入图片描述
显示截图这类信息,代表JDK安装完成。(现在是真方便了,当年还要单独配置JDK的环境变量)

3.下载鸿蒙版flutter
https://gitee.com/openharmony-sig/flutter_flutter
在这里插入图片描述

下载压缩包后,解压放在c盘以外的文件夹。后面配置需要用到文件路径。

4.配置Flutter开发环境变量

在这里插入图片描述
计算机属性-高级系统设置-环境变量

 #依赖缓存
 export PUB_CACHE=D:/PUB(自定义路径)
# 国内镜像
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

# 拉取下来的flutter_flutter/bin目录
export PATH=D:\CodeWorld\Flutter\flutter_flutter-master\bin:$PATH

# OpenHarmony SDK
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指令(可选)

# 可选配置项(防止由于flutter鸿蒙版的git下载地址环境变量不匹配,影响后续的flutter项目创建)
export FLUTTER_GIT_URL=https://gitee.com/openharmony-sig/flutter_flutter.git

export PATH=<git path>/cmd:$PATH

将以上信息,成对配置在环境变量的系统变量里。以下图举例:
在这里插入图片描述
注意
PATH配置到系统环境变量的path里新增即可。
Windows环境下flutter工程和依赖的插件工程需要在同一个磁盘。
windows环境中需要添加git环境变量配置,否则会造成执行 flutter 命令 出现闪退。

以上配置完成后,重启电脑,环境变量生效。使用 flutter doctor -v 进行检查。
在这里插入图片描述
在这里插入图片描述

### FlutterHarmonyOS集成教程 #### 创建项目结构 为了实现FlutterHarmonyOS混合开发,首先需要准备个支持多平台的Flutter项目。在命令行中执行如下操作来初始化个新的Flutter项目: ```bash flutter create harmony_flutter_app cd harmony_flutter_app ``` 这会建立个基础的Flutter应用程序框架。 #### 配置DevEco Studio 对于鸿蒙操作系统特有的功能调用支持,推荐使用官方提供的[HUAWEI DevEco Studio](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/studio_download-0000001053897246),该工具专门为鸿蒙生态定制化设计[^3]。安装完成后,在`File -> New -> Import Project...`导入之前创建好的Flutter项目文件夹路径下的`.idea`目录,以便于后续针对鸿蒙特性的优化调整工作。 #### 添加依赖项 编辑项目的`pubspec.yaml`文件,加入必要的包管理器声明以及任何可能需要用到的第三方库。特别是要确保包含了能够处理跨平台通信服务访问的相关插件,比如用于网络请求、本地存储等功能模块的支持。 ```yaml dependencies: flutter: sdk: flutter # Add other dependencies here... dev_dependencies: flutter_test: sdk: flutter ``` 同时还需要修改`build.gradle`中的配置以适应鸿蒙环境的要求,具体可以参照文档说明完成相应设置[^1]。 #### 实现页面交互逻辑 编写Dart代码定义UI组件及其行为模式,利用StatefulWidget或Provider等状态管理模式保持界面更新同步。考虑到性能因素,建议尽可能减少不必要的重建次数,并合理规划异步任务调度机制。 ```dart import 'package:flutter/material.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Harmony & Flutter Demo', theme: ThemeData(primarySwatch: Colors.blue), home: Scaffold( appBar: AppBar(title: Text('Home Page')), body: Center(child: Text('Welcome to HarmonyOS with Flutter!')), ), ); } } ``` 以上是个简单的例子展示如何构建初始视图层次结构;实际应用场景下还需进步扩展完善业务流程控制部分。 #### 测试与部署 最后步是对整个解决方案进行全面测试验证其稳定性兼容性表现良好之后再考虑正式上线发布事宜。借助模拟器或者真实设备来进行全方位的功能检测是非常重要的环节之。此外也可以尝试接入些自动化持续集成/交付(CI/CD)管道提高效率降低人为错误风险。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值