从gitee上的鸿蒙开源Flutter停止更新说起

哈喽,我是老刘

2月底的时候,gitee 上的开源鸿蒙下的Flutter相关项目全部停止更新,仓库显示已关闭。

后来发现不是项目停了,只是从gitee切换到GitCode。

原因大概率是因为GitCode是基于华为云的。

但是今天老刘不是想说切换托管平台的事,而是想在这里说说Flutter之于鸿蒙。

纯血鸿蒙的现状

  1. 微信、支付宝这类必备应用的功能一致性
    对于这些必备应用来说鸿蒙原生应用的功能是否和Android、iOS版本一致是非常重要的。
    我问了deepseek,回答是:

"主要功能已对齐,但部分附加特性或需等待后续更新。"

  1. 应用数量对比
    deepseek的回答如下:

结论:现阶段的纯血鸿蒙手机仍然无法成为满足大多数人主力手机端需求。

如何快速推进生态

站在厂商的角度,肯定希望所有开发者都来开发鸿蒙原生应用。甚至在纯血鸿蒙刚推出时不惜动用市场之外的力量。

站在开发者的角度,多一个平台就多了一份开发成本,当前的经济形势让开发团队支付这个成本实在太重了。

站在用户的角度,同一个APP在不同设备、系统上的体验最好一致,否则使用起来就很难受。比如我在手机上用微信读书看书,回家后再ipad上继续看,肯定希望操作、体验都是一样的。

这就形成了一个不可能三角。

如何在这里面找到一个最优解呢?

老刘觉得Flutter这样的跨平台开发框架就是破局的关键。

首先来看Flutter的特点:

  • 一套代码多个平台运行
  • 原生级别的性能
  • 超高的多端一致性体验

站在开发者的角度

以中型应用为例,传统双端(iOS+Android)开发需12人月,Flutter可压缩至8人月。

若新增鸿蒙适配,原生开发需额外增加4人月。

而基于Flutter仅需1人月处理平台特定API(例如系统原生的各种功能调用)。

这种边际成本递减效应显著提升开发者支持鸿蒙的动力。

站在用户的角度

Flutter在渲染层面是独立于平台的,因此可以认为除非开发者特意针对不同平台设计不同的交互。

否则在不同平台上,比如Android、iOS和鸿蒙上,用户体验基本是一致的。

站在鸿蒙的角度

本身鸿蒙的设计就借鉴了Flutter的很多东西。

同时基于Flutter的分层设计理念,兼容新的系统需要的工作是比较清晰且独立的。

因此在鸿蒙上支持Flutter相对来说的成本并不高。

而且从开发者留存的角度看,能最大程度的让现有的客户端开发者去兼容鸿蒙。

所以老刘认为以平台的角色去支持Flutter等跨平台框架是鸿蒙系统最优选择。

事实上鸿蒙方面也是这样做的,所以才会有文章开头看到的那些开源项目。

鸿蒙支持Flutter的现状

总的来说,鸿蒙对Flutter的支持已进入可用但需优化阶段:基础功能适配成熟,但生态完整性和性能调优仍需时间。

具体来说Flutter支持鸿蒙需要以下几个几个工作:

1、Flutter框架在鸿蒙系统的原生app外壳中能运行起来

2、Flutter应用能打包成鸿蒙原生应用

3、三方库对鸿蒙系统的支持

其中 1 和 2 因为前面说的原因,已经可以很好的运行起来了。(这是实现起来最简单的部分)

但是有一点需要注意,Flutter没发布一个新的版本,就需要鸿蒙方面去适配和跟进。

这方面目前看和Flutter的官方版本有一定的进度落后。

第3点需要分两种情况来看:
对于纯Dart库

理论上不需要开发者做任何操作,应该能在鸿蒙版Flutter上正常运行。

这部分排除底层实现的bug和性能方面的问题,应该是问题不大的。

对于Flutter + 原生混合开发的插件

这种混合开发的插件目前是最麻烦的地方。

因为需要这些库的开发者去主动适配鸿蒙系统,否则无法正常运行。

但是对这些广大的中小开发者来说,目前看没有特别的动力去推进开发适配工作。

假设我是一个开源的Flutter三方插件的开发者,如果要去适配鸿蒙,我需要先学习鸿蒙原生开发。

然后还需要拉一个单独的分支专门针对鸿蒙版Flutter进行适配。

最关键的是一目前鸿蒙的开发者体量,似乎对我的开源项目没有什么帮助。

所以老刘觉得如果想要开发者有动力去进行这方面的适配工作,可能钞能力是要用上的。

能看到鸿蒙方面也在积极的推进这方面的工作。

比如老刘最近就收到过几次写鸿蒙开发文章的邀请,文章数据好会有一些奖励。

总结

简单总结一下。

纯血鸿蒙本身目前无法平替Android或者iOS手机。应用生态的缺口仍然比较大。

开发原生鸿蒙应用对开发团队来说成本很高。

跨平台框架是鸿蒙应用生态快速发展的破局之道。

目前鸿蒙已经支持Flutter框架。

但是对于Flutter + 原生模式的三方插件需要开发者主动适配鸿蒙系统,目前数量较少。

最后作为一个开发者,希望写一套代码可以运行在所有平台上,不用熬夜加班去适配。

如果看到这里的同学对客户端开发或者Flutter开发感兴趣,欢迎联系老刘,我们互相学习。

点击免费领老刘整理的《Flutter开发手册》,覆盖90%应用开发场景。

可以作为Flutter学习的知识地图。
覆盖90%开发场景的《Flutter开发手册》

相关推荐
余多多_zZ1 小时前
鸿蒙初学者学习手册(HarmonyOSNext_API14)_UIContext(@ohos.arkui.UIContext (UIContext))
笔记·学习·华为·harmonyos
一人前行3 小时前
Flutter_学习记录_connectivity_plus 检测网络
flutter
别说我什么都不会3 小时前
OpenHarmony-HDF驱动框架介绍及加载过程分析
harmonyos·领域驱动设计
轻口味3 小时前
【每日学点HarmonyOS Next知识】上下拉动作、图片预览、组件边距、this获取、svg旋转
华为·harmonyos·harmonyosnext
奔跑的露西ly3 小时前
【HarmonyOS NEXT】实现文字环绕动态文本效果
前端·javascript·html·harmonyos
云水-禅心3 小时前
鸿蒙编译框架插件HvigorPlugin接口的用法介绍
华为·harmonyos·插件·plugin·hvigor
轻口味4 小时前
【每日学点HarmonyOS Next知识】防截屏、加载不同View、函数传参、加载中效果、沉浸式底部状态栏
pytorch·深度学习·harmonyos·harmonyosnext
一个处女座的程序猿O(∩_∩)O4 小时前
鸿蒙Next开发与实战经验总结
华为·harmonyos
二流小码农5 小时前
鸿蒙开发:自定义一个Toast
android·ios·harmonyos
顾林海5 小时前
Flutter Dart 异常处理全面解析
android·前端·flutter