从 3.44 到 3.47:Flutter 新特性与鸿蒙适配的对照观察

0 评论 802 浏览 0 收藏 10 分钟

Flutter 3.44 发布于 Google I/O 2026,3.47 发布于 8 月 12 日; 而 flutter-oh 的 3.44 基线还停留在 canary 预览,3.47 也已经预览可用—— 这中间,只隔了 3 天。

一、为什么把 3.44 和 3.47 放在一起看

如果你只关注 Flutter 官方节奏,3.44 和 3.47 是两次普通的大版本发布:一次在 Google I/O(5 月 20 日),一次在 8 月 12 日。

  • flutter-oh 的 3.44:oh-3.44.9-dev 分支,版本号还是 3.44.9+ohos-0.0.1-canary1,处于预览(canary)阶段;
  • flutter-oh 的 3.47:oh-3.47.4-dev 分支,版本号已经是 3.47.4-ohos-1.0.4,达到debug/profile/release 全模式可用

虽然中间隔着一个大版本——而这段路,俊伟带头的野生开发者兴趣小组只用了 3 天。当然社区做的,目前性能,稳定性等还没有测试,需要验证后才有结论

二、官方视角:3.44 与 3.47 带来了什么

Flutter 3.44 —— “Empowering developers at Google I/O 2026”

3.44 是里程碑式的一版,核心关键词是架构演进与平台拓展

方向 3.44 亮点
Android **Hybrid Composition++**,平台视图性能大幅提升
iOS/macOS Swift Package Manager 成为新默认

,逐步告别 CocoaPods

渲染 Impeller Vulkan 支持改进(缓存内存管理、GPU/CPU 同步优化)
桌面 与 Canonical 合作预览多窗口支持,Windows 新增手写笔(旋转/压感)
架构 Material/Cupertino 从核心框架解耦

(代码冻结,为 standalone 包铺路)

AI 开发 Agentic Hot Reload

、Dart & Flutter Agent Skills、MCP 集成

工具链 DevTools 改用 WASM 默认、Widget Previews 实验版、Rosetta-free 原生 Apple Silicon
嵌入式 2026 Toyota RAV4 车机、LG webOS SDK
框架 CupertinoMenuAnchor、MenuAnchor Material 3 动画、CarouselView 无限滚动、SDF 圆形渲染、无障碍增强

Flutter 3.47 —— “Modular by design”

3.47 的核心是模块化落地与桌面渲染换代

方向 3.47 亮点
架构 material_ui / cupertino_ui standalone 包 1.0 发布

(opt-in,设计系统独立发版)

本地化 flutter_localizations

解耦,delegates 随 standalone 包分发

渲染 Impeller 成为 macOS/Windows/Linux 桌面默认渲染器

,桌面 SDF 文本渲染

Apple 备战 Xcode 27 / iOS 27 / macOS 27,最低系统版本提升(iOS 13→15、macOS 10.15→12)
生命周期 iOS 27 强制 UIScene lifecycle,CLI 自动迁移
Web 迈向 Wasm 默认,支持 wasm deferred loading 实验
桌面 多窗口实验推进(popup windows、windowHandle、sized-to-content)、Windows/Linux flavors
工具链 Widget Previews 转 stable

、SwiftPM 插件迁移率 92/100

移动 Android 依赖矩阵更新(AGP 9.1.0、Gradle 9.3.1、compileSdk 36)、虚拟键盘 modifier 修复

三、鸿蒙视角:flutter-oh 的 3.44 与 3.47

flutter-oh 3.44:

维度 3.44 现状
分支 / 版本 oh-3.44.9-dev

/ 3.44.9+ohos-0.0.1-canary1

Dart 版本 Dart 3.12.2(kernel 130)
引擎工件 托管在 OBS(engine.ohos / engine.ohos.har)
模板 targetSdkVersion 升级至 26.0.0、compatibleSdkVersion 5.0.5(17)
定位 预览适配,工程化链路尚未完全自愈

flutter-oh 3.47:

维度 3.47 现状
分支 / 版本 oh-3.47.4-dev

/ 3.47.4-ohos-1.0.4(stable)

Dart 版本 Dart 3.13.3(kernel 138)
引擎工件 Release 发布(atomgit.com/oh-flutter/flutter_flutter),flutter doctor -v 自动拉取
定制 SDK dart-sdk-ohos.zip

(HAP 构建运行时)+ dart-sdk-darwin-arm64-ohos.zip(macOS 交叉)

渲染 Impeller(Vulkan)主路径 + Skia 兜底,黑屏问题全模式修复
验证 OpenHarmony 7.0(API 26)模拟器 + 真机通过

四、核心差异对照表

维度 Flutter 3.44 Flutter 3.47 flutter-oh 3.44 flutter-oh 3.47
发布时间 2026-05-20 2026-08-12
Dart 3.12 3.13.3 3.12.2(kernel 130) 3.13.3(kernel 138)
渲染策略 Impeller Vulkan 改进 Impeller 桌面默认 OBS 引擎 har Release 引擎 har + Vulkan surface format 修复
设计系统 Material/Cupertino 冻结 standalone 包 1.0 跟随 core 跟随 core(解耦后鸿蒙侧同样受益)
平台视图 Hybrid Composition++ 打磨 随 core 随 core
Apple SPM 默认 Xcode 27 备战 无关 无关
Web Wasm 默认方向 无关 无关
工具链 DevTools WASM Widget Previews stable 模板 API 26 工件自愈下载 + AOT 缓存修复
鸿蒙形态 canary 预览 canary 全模式

五、对鸿蒙适配者来说,最关键的三个差异

1. Dart 升级:kernel 130 → 138,这是硬门槛

3.44 适配时使用的定制 SDK 基于 Dart 3.12.2(kernel 130);3.47 升级到 Dart 3.13.3(kernel 138)

kernel 版本不匹配,HAP 构建会直接报Unexpected Kernel Format Version 130 (expected 138)——引擎、patched_sdk、gen_snapshot 必须整套配套重建,这正是大版本升级最耗时的环节。

2. 引擎工件:从 OBS 到 Release 自愈

  • 3.44 时代:引擎 har 托管在 OBS,下载链路需要手工维护;
  • 3.47 时代:7 个引擎工件 + 2 个 dart-sdk 随 Release 统一发布,flutter doctor -v 自动拉取配套版本,缓存靠 .ohos-override-url 标记比对 URL 判断过期。

配套链路从“半自动”走向“装完即用”,这是 3.47 鸿蒙适配工程化的关键一步。

3. 渲染与稳定性:黑屏问题的全模式终结

3.47 适配中,社区解决了此前最头疼的真机问题:

  • offscreen native window 补齐 SET_USAGE / SET_FORMAT,解决 GPU does not support the format(0) 黑屏;
  • Dart FFI ABI 对齐(ohosArm64=23 等),修复 ARM64 启动闪退;
  • 1.0.4 又补齐 debug/profile 档引擎重编,黑屏修复覆盖全模式
  • 引擎 HAR 计算 SHA-256 指纹,稳定 debug/profile/release 模式切换与 AOT 缓存。

六、3 天冲刺:从 3.44 到 3.47

9 月 8 日,社区开发者聊起 0day 适配的构想;9 月 12 日 Flutter 3.47.4 发布,恰逢周末;3 人小队(由少湖牵头)当机立断开干。

9 月 13 日开工,9 月 15 日模拟器与真机验证通过——3 天时间完成 3.44 → 3.47 的大版本升级:

  • 引擎平台壳与 Impeller(Vulkan)渲染路径紧跟 3.47 基线;
  • 定制 Dart SDK / patched_sdk 重建,对齐 Dart 3.13.3(kernel 138);
  • 引擎工件发布与自动下载链路打通,flutter doctor -v 一键自愈。

对比 3.44 和 3.47 ——适配路径已经标准化,大版本升级不再以周为单位。

七、展望:3.50 到来时,0day 适配不是问题

3.44 到 3.47 的跨越,证明了“官方发版 → 鸿蒙跟进”的时间窗口可以被压缩到极致。

有了标准化的适配路径、自愈的工件链路、以及一支随时能拉起来的社区小队——等到 3.50 到来的时候,0day 适配已经不是问题。

而社区开发者,往往在社区的支持下,更有动力为了生态繁荣持续更新。

参考资料:

[1]What’s new in Flutter 3.44: https://flutter.dev/blog/whats-new-in-flutter-3-44

[2]What’s new in Flutter 3.47: https://flutter.dev/blog/whats-new-in-flutter-3-47

[3]oh-flutter/flutter_flutter: https://atomgit.com/oh-flutter/flutter_flutter

本文由人人都是产品经理作者【nutpi】,微信公众号:【nutpi】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载

题图来自Unsplash,基于 CC0 协议。

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
海报
评论
评论请登录
  1. 目前还没评论,等你发挥!