Flutter项目适配鸿蒙

Flutter项目适配鸿蒙

前言

目前市面上使用Flutter技术站的app不在少数,对于Flutter的项目,可能更多的是想直接兼容Harmonyos,而不是直接在重新开发一个新的鸿蒙项目。

那么Flutter如何兼容鸿蒙平台了?接下来我们探讨下Flutter项目是如何兼容鸿蒙的。

参考文档: flutter_sample

Flutter项目适配鸿蒙

新工程直接支持ohos

如果你的项目现在才刚开开始启动, 那么你完全可以创建一个新的Flutter项目,直接支持Android、iOS、ohos 等平台。

构建新项目

创建项目指令:flutter cteate --platforms android,ios,ohos(支持的平台) <projectname(项目名称)>

由于Flutter官方并没有明确表示支持鸿蒙,所以无法使用Android Studio等编译工具直接创建一个支持ohos(鸿蒙)平台的Flutter项目。

命令行输入指令:flutter create --platforms android,ios,ohos flutter_test_demo_gy

执行结果:

工程结果目录:

根据目录我们看出, 其实跟原来Flutter创建的工程差别不大, 只是多了一个ohos的工程目录。这个目录就是我们所说的鸿蒙工程。

编译

我们可以打开ohos目录下的鸿蒙工程,然后在终端执行命令flutter build hap

当我们第一次打开ohos功臣, 同步项目时,会报如下错误:

这个错误是由找不到fluttter.har包的问题, 因为此时你还没有编译, 等你执行完编译指令后就没有这个错误了。

如上图执行成功后, 我们可以看到ohos项目把Flutter项目的东西打包成一个har包给ohos项目引用着。

注意:Flutter鸿蒙化项目只能运行在真机上或者arm架构设备的模拟器上

运行

在编译完项目之后, 你可以按照鸿蒙项目的开发流程一样,配置证书、直接点击编译工具运行项目, 也可以使用原来的Flutter指令来运行:flutter run

运行结果:

Flutter页面正常展示,代表Flutter项目已经成功运行在鸿蒙手机上。

如果后续需要开发新的功能, 我们需要再Flutter中编写相关代码, 然后在走编译、运行流程。

适配已有的Flutter项目

如下图,我现在有一个已经存在Flutter项目:

从上面的结构目录看, 这个一个不支持ohos平台的项目,我们如何让这个已经存在的Flutter兼容鸿蒙平台?

  1. cd 进入项目根目录
  2. 执行指令flutter create ./ --platform ohos 创建鸿蒙模块

执行结果:

执行完命令后的目录结构:

然后我们就可以打开ohos鸿蒙工程, 直接编译、运行到手机上。

运行结果:

相关推荐
猫林老师1 小时前
HarmonyOS分布式数据库深度应用
harmonyos
柿蒂3 小时前
聊聊SliverPersistentHeader优先消费滑动的设计
android·flutter
LucianaiB3 小时前
【成长纪实】从“Hello World”到分布式实战的进阶之路
harmonyos·鸿蒙·成长纪实
万添裁4 小时前
基于ArkAnalyzer的HarmonyOS通用API多端安全性分析工具
harmonyos·ark
无风听海4 小时前
HarmonyOS之启动应用内的UIAbility组件
前端·华为·harmonyos
Bert丶seven5 小时前
鸿蒙Harmony实战开发教学(No.8)-Hyperlink超链接组件基础到进阶篇
华为·harmonyos·arkts·arkui·1024程序员节·开发教程
JohnnyDeng946 小时前
ArkTs-Android 与 ArkTS (HarmonyOS) 存储目录全面对比
android·harmonyos·arkts·1024程序员节
王嘉俊9256 小时前
HarmonyOS 超级终端与服务卡片开发:打造无缝多设备交互体验
华为·架构·harmonyos·arkts·1024程序员节
fishofeyes7 小时前
Riverpod使用
flutter
俩毛豆7 小时前
【图片】【编缉】图片增加水印(通过组件的Overlay方法增加水印)
前端·harmonyos