很多人一提 Android + Flutter 混合开发,第一反应是:
"在 Android 里打开一个 Flutter 页面。"
而真正做过中大型混合项目之后,几乎都会经历一次认知转变:
👉 混合开发不是"加一个页面",而是在 Android 系统中,集成一个 Flutter UI 子系统。
这个专栏,记录的正是我从"会接 Flutter 页面",走向"设计混合系统架构"的一次完整思考过程。
它不是 API 教程,而是一套工程认知模型 + 架构方法论。
一、混合开发的真实层级:你是在"接页面",还是"接系统"?
大多数混合项目出问题,根源都不在代码,而在认知层级错误。
如果你把 Flutter 当成:
一个新页面技术
那项目后期一定会出现:
- 页面串状态
- 引擎乱建
- 通信失控
- 模块互相污染
- 性能不可控
而在企业级混合项目中,Flutter 的真实角色应该是:
👉 Android 系统中的一个 UI 子系统。
所以正确的抽象层级一定是:
Android 宿主系统
→ FlutterEngine(子系统内核)
→ Flutter Shell(系统壳 / 调度中枢)
→ Flutter Modules(业务插件)
这是整个专栏反复围绕的一条主线。
二、统一架构模型:四层混合体系
我把混合架构收敛成四层结构:
1️⃣ 内核层:FlutterEngine
包含:
- Dart VM
- 渲染管线
- 插件系统
- 线程与资源管理
关键词:性能 / 稳定 / 生命周期
👉 这一层决定:单引擎 vs 多引擎。
2️⃣ 壳层:Flutter Shell(中枢)
包含:
- main()
- MaterialApp
- Navigator / Router
- 模块注册
- NativeBridge
- 全局状态
关键词:调度 / 协议 / 中枢
👉 这一层决定:混合系统是否可控、可演进。
3️⃣ 模块层:Flutter Modules
包含:
- pay / profile / panel / marketing ...
- 页面 + 能力
- 去 App 化设计
关键词:边界 / 复用 / 组织
👉 这一层决定:工程规模与团队协作能力。
4️⃣ 展示层:Android 容器
- FlutterActivity(整页)
- FlutterFragment(页面容器)
- FlutterView(嵌入 View)
关键词:承载 / 显示 / 交互
👉 这一层决定:产品形态。
三、工程路线图:从 0 到企业级混合架构
一套成熟混合系统,通常会经历 5 个阶段:
阶段 1:接入跑通(验证阶段)
- 创建 flutter module
- Android 打开 FlutterActivity
- 跑通渲染链路
👉 技术验证,不是架构阶段。
阶段 2:引擎治理(工程阶段)
- Application 预热 FlutterEngine
- FlutterEngineManager 统一管理
- 使用缓存引擎启动页面
👉 从 Demo 进入工程。
阶段 3:系统化(架构阶段)
- Flutter Shell
- 路由调度
- Native Bridge 中枢
👉 从"页面"升级为"子系统"。
阶段 4:模块化(平台阶段)
- shell + feature packages
- example 调试壳
- 模块注册机制
👉 从工程升级为平台。
阶段 5:嵌入化(系统集成阶段)
- FlutterView 嵌入
- 返回栈治理
- 生命周期绑定
- 性能策略
👉 从平台升级为系统集成能力。
四、三条最重要的架构判断线
✅ 1. 是否同一 Dart 入口?
是 → 单引擎
否 → 多引擎(或做 shell 聚合)
✅ 2. Flutter 是否长期存在于系统中?
是 → 必须引擎中枢化
否 → 可以简单页面模式
✅ 3. Flutter 是否承担系统级 UI?
是 → 必须 Shell + 模块化
否 → 页面级混合即可
五、为什么这套模型具备"可迁移性"?
因为这不是 Flutter 专属模型,而是:
👉 系统集成模型。
它可以直接迁移到:
- KMP + Compose Multiplatform
- WebView 容器体系
- Unity / UE 嵌入
- 车机 / 机器人 HMI
- Linux GUI 子系统
你学到的不是"Flutter 混合",而是:
👉 如何在一个系统中集成另一个系统。
六、本专栏结构说明
本专栏将围绕"混合架构"这一主线,分为三大部分:
第一部分:架构认知篇(思想层)
1️⃣ 从零理解 Android + Flutter 混合开发:引擎、页面、模块到底是什么关系?
👉 统一认知模型,纠正常见误区。
2️⃣ Android 接入 Flutter(Add-to-App)最小闭环:10 分钟跑起第一个混合页面
👉 跑通工程链路,进入混合体系。
3️⃣ 为什么企业级混合项目一定要做 FlutterEngine 统一管理(单引擎模型详解)
👉 混合架构核心。
第二部分:架构设计篇(系统层)
4️⃣ Flutter 模块化架构设计:像 Android 组件化一样开发 Flutter
👉 shell + module + example 体系。
5️⃣ Android 原生页面嵌 FlutterView 的工程化落地(通信 / 路由 / 返回栈 / 性能)
👉 混合系统真正的工程形态。
第三部分:方法论总结篇(收束层)
6️⃣ Android + Flutter 混合架构全景图:从接入到系统的完整方法论
👉 地图 + 决策模型 + 架构坐标系。