📘 Flutter & 安卓混合开发
30章完整版
🧑🎓
风格 · 活力全栈
01
混合开发概述
为什么需要混合开发
Flutter Boost
Engine Group
架构选型
02
开发环境搭建
Flutter SDK
Android Studio
Gradle兼容
第一个混合工程
03
Flutter Module创建
flutter create --template module
目录结构
依赖关系
04
原生工程集成Flutter Module
Android配置
settings.gradle
build.gradle
同步构建
05
FlutterEngine管理
单Engine vs 多Engine
缓存策略
生命周期
06
MethodChannel通信机制
BasicMessageChannel
MethodChannel
EventChannel
编解码器
07
Flutter调用原生方法
Flutter发起调用
Android Handler
参数与返回值
08
原生调用Flutter方法
MethodChannel调用Flutter
监听与响应
异步回调
09
EventChannel事件流
原生端发送事件
Flutter订阅
网络状态/传感器
10
BasicMessageChannel
简单消息传递
字符串/二进制
与MethodChannel区别
11
PlatformView嵌入
Android原生View嵌入Flutter
AndroidView
生命周期同步
12
FlutterView嵌入原生
FlutterView Fragment
Fragment管理
页面跳转
13
页面路由管理
Flutter路由定义
原生启动Flutter页面
初始化参数
14
Flutter Boost集成
引入Boost依赖
路由配置
生命周期管理
15
Flutter Boost页面跳转
原生→Flutter
Flutter→原生
参数传递
16
Flutter Engine Group
多Engine共享原理
Group创建配置
内存优化
17
混合栈管理
Boost栈机制
自定义栈行为
返回键处理
18
数据持久化与共享
SharedPreferences
文件路径共享
数据库选择
19
图片与资源管理
共享图片资源
Asset与Drawable互访
缓存策略
20
插件开发实战
创建Flutter Plugin
Android实现
发布/本地引用
21
混合工程调试
Android Studio调试Flutter
断点调试
日志输出
22
性能优化
启动速度
Engine预热
内存泄漏检测
帧率监控
23
热重载与热更新
热重载限制
CodePush对比
Tinker集成
24
多渠道打包
多渠道配置
Gradle flavor
AndroidManifest合并
25
自动化测试
Widget测试
Instrumentation测试
混合场景集成测试
26
持续集成
Jenkins/GitLab CI
构建脚本
产物归档
27
常见问题与避坑
Engine重复创建
Channel命名冲突
PlatformView黑屏
版本兼容
28
实战项目一:登录模块
原生WebView登录
Flutter展示用户信息
29
实战项目二:支付模块
Flutter发起支付
支付宝/微信SDK
回调处理
30
课程总结与未来展望
混合开发趋势
Flutter 3.x新特性
WebAssembly未来