Flutter鸿蒙化 在鸿蒙应用中添加Flutter页面

前言

今天这节课我们讲一下 在鸿蒙应用中添加Flutter页面。

作用:

之前有很多朋友和网友问我鸿蒙能不能使用Flutter开发,他们的项目已经用Flutter开发成熟了有什么好的方案呢,今天讲到这个就可以很好的解决他们的问题,例如我们正式项目中可能是一部分native 开发 一部分使用Flutter的一个写公共组件库适配在的不同的端上面。那么我们今天讲到这个专题就可以很好的解决此类问题:

如何使用 FlutterPage

  1. 使用 DevEco-Studio 打开 ohos 工程
  2. 鼠标右键点击 ohos/entry/src/main/ets/pages 目录,依次选择 New->Page->Empty Page
  3. 修改 Page Name,鼠标左键点击Finish

EntryAbility 需要继承自 FlutterAbility

export default class EntryAbility 
### Flutter鸿蒙系统上的实现是否为纯血鸿蒙 要判断 Flutter鸿蒙系统上的实现是否属于“纯血鸿蒙”,需从多个角度分析,包括底层架构的支持、开发工具链的依赖以及具体功能实现的方式。 #### 1. **底层架构支持** 自 HarmonyOS Next 版本起,鸿蒙系统已完全脱离 Android 的生态体系[^3]。这意味着该版本及其后续版本不再兼容 APK 文件,仅支持 HAP (HarmonyOS Ability Package) 格式的应用程序包。同时,鸿蒙内核也由 Linux 替换为了微内核设计,这标志着鸿蒙进入了一个全新的发展阶段。对于 Flutter 来说,这种变意味着其运行时环境需要重新适配到新的操作系统层面上去,而不再是借助 AOSP 提供的基础服务完成工作流[^4]。 #### 2. **开发工具链与框架集成** 针对 HarmonyOS Next 的 Flutter 开发流程中提到的具体配置步骤表明,开发者需要手动设置一系列特定于鸿蒙系统的变量和路径,例如 `DEVECO_SDK_HOME` 和其他相关环境变量[^4]。这些操作说明了当前阶段下,虽然 Flutter 可以被用来构建跨平台应用并部署至鸿蒙设备上,但它仍然依赖部分定制的插件或者扩展库(如 flutter_boost)来桥接两者之间的差异点[^1]。因此严格意义上讲,这样的解决方案并不能算作完全意义上的“纯血”。 #### 3. **通信机制与交互模式** 当涉及到 Flutter 应用内部组件间或是与其他本地模块间的通讯时,则更多采用了 RPC 或者消息队列等形式来进行数据交换。这种方式本身并没有特别之处——几乎所有现代移动应用程序都会采用类似的手段处理复杂的业务逻辑需求;然而值得注意的是,在某些情况下可能还需要额外编写一些 JNI 层面代码以便更好地利用硬件资源特性等等[^2]。所以即便是在最高抽象层次之上运作着看似一致性的界面渲染引擎背后,也可能隐藏了不少针对目标平台做了特殊优调整的部分。 综上所述,尽管 Flutter 已经能够在最新版的鸿蒙系统上正常运行,并且随着官方持续投入研发力量不断改进用户体验质量等方面表现良好,但从技术角度来看目前还无法达到所谓绝对意义下的“纯血状态”。未来或许会看到更加深入融合的结果出现吧! ```python # 示例:简单展示如何初始一个基于Flutter Boost的项目结构 import 'package:flutter_boost/flutter_boost.dart'; void main() { setupFlutterBoost(); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xq9527--

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值