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鸿蒙工程, 直接编译、运行到手机上。

运行结果:

相关推荐
坚果的博客22 分钟前
Cordova 开发鸿蒙应用完全指南
华为·harmonyos
爱笑的眼睛113 小时前
HarmonyOS应用开发中HTTP网络请求的封装与拦截器深度实践
华为·harmonyos
sunly_4 小时前
Flutter:视频预览功能
javascript·flutter·音视频
爱笑的眼睛114 小时前
HarmonyOS截屏与录屏API深度解析:从系统权限到像素流处理
华为·harmonyos
Android疑难杂症6 小时前
鸿蒙Notification Kit通知服务开发快速指南
android·前端·harmonyos
勤劳打代码7 小时前
条分缕析 —— 通过 Demo 深入浅出 Provider 原理
flutter·面试·dart
BlackWolfSky8 小时前
鸿蒙三方库httpclient使用
华为·harmonyos·鸿蒙
2501_915918418 小时前
Flutter 加固方案对比与实战,多工具组合的跨平台安全体系(Flutter App 加固/IPA 成品混淆/Ipa Guard CLI/自动化安全流程)
安全·flutter·ios·小程序·uni-app·自动化·iphone
Bryce李小白8 小时前
Flutter中mixing的原理及应用场景
flutter
_大学牲8 小时前
从 0 到上架:用 Flutter 一天做一款功德木鱼
前端·flutter·apple