【Flutter小技巧05】--- Flutter混编集成方案探讨
📃 需求是学习技术最有效的动力
前言:分八大模块分享了从集成到调试、打包、调优,1-6模块属于必选过程,7-8模块属于可选过程,这边采用文字书写比较多,O(∩_∩)O哈哈~如有不对、不足之处,各位大佬多多点评指出。Thanks♪(・ω・)ノ
一、集成方式(必选)
1、 使用 CocoaPods 依赖管理和已安装的 Flutter SDK 。(官方推荐)
2、把 Flutter engine 、你的 dart 代码和所有 Flutter plugin 编译成 framework 。用 Xcode 手动集成到你的应用中,并更新编译设置。 (iOS中的framework 可理解为 android 对应aar)
这边列表出了4种协同开发方案可供参考,并列出了优劣势以及注意点:
二、打包测试包方式(必选)
三、flutter环境安装(必选)
参考官方文档:flutter.cn/docs/get-st…
本人写的个人博客:blog.csdn.net/yj229201093…
四、集成步骤(必选)
参考官方文档:
android: flutter.cn/docs/develo…
五、混编方案(必选)
两种混编方案:(原生方式需要注意内存开销,开多引擎会导致内存开销很大,如果需要多开引擎慎重)
1、flutter原生方式集成。
2、使用闲鱼开源的flutter_boost (目前项目中医生端处方3.0患者搜索页面使用flutter_boost方案)
这边有两种常见场景:(如果使用场景一使用flutter原生方式,可能会涉及开多个引擎的问题,就会导致内存开销很大的问题。场景二就需要开启一个引擎即可)场景一使用flutter_boost可解决多引擎问题。有兴趣可参考demo体验:github.com/yj229201093… (两个分支:master 是flutter_boost方式, flutter_native分支是flutter原生方式)
六、混编调式(必选)
主要两种方式:
1、flutter侧 使用一个TestApp入口,flutter模块自己调试,和原生无关,UI层使用热重载提供开发效率,API层,可提供固定域名和和header等参数。
2、使用Flutter Attach,混合模式调试,先启动flutter attach, 然后原生启动项目,然后进入flutter可调试
七、性能检测调优(可选)
可以采用工具:
1、Flutter自带工具 DevTools
2、使用字节开源的ume
3、使用滴滴开源的 dokit
4、其他
八、扩展(可选)
属于技改方向:根据业务开发相应的工具,在业务开发的时候提高效率,比如flutter_boost、插件工具、调试功能等
转载自:https://juejin.cn/post/7016603152321347592