ios flutter 混编

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios flutter 混编相关的知识,希望对你有一定的参考价值。

参考技术A 最近在集成flutter进项目
以收集编译产物并以cocopods方式集成

产物大概放入两个pod库
这个暂且叫pod1,pod1放flutter.framework,第三方plugin.a,自己写的基础plugin,比如networking,hud等等(由于是混编,不可避免存在很多原生基础组件,所以能公用的基础组件都会弄一个flutter-plugin桥接)

第二个pod2放编译之后的app.framwork,注册文件GeneratedPluginRegistrant,以及各个业务模块.a(有可能没有)结构大概如下面

podspec大概如下

主工程引入这两个pod库即可

接下来从零开始搭建上文所说的

先创建一个flutter module
这个是主flutter工程,用来集成businessModule以及生成app.framework
结构如下图

再生成一个业务工程

注意此时还需要进入example生成iosandroid工程,不然无法单独编译运行

这样 这个单独的业务模块就可以单独跑起来了
此时主flutter工程和业务工程均搭建完毕
在主工程pubspec.ymal文件讲两个工程关联

好了 接下来就是编写脚本收集产物了

编译完成之后会在flutter主工程product生成如下文件

将上面文件分类收集做成文章开头的pod1,pod2 ,在native工程引入即可

在集成flutter的过程中 踩不少坑 也阅读很多前辈的文章,在此一并感谢

以上是关于ios flutter 混编的主要内容,如果未能解决你的问题,请参考以下文章

Flutter iOS混编 解决flutter在iOS14+ debug模式上无法运行的问题

2022-04-22iOS项目混编flutter,iOS真机debug模式下打不开flutter页面

Flutter工程化之iOS混编集成

iOS Flutter 混编遇到的问题及解决办法

iOS Flutter 混编遇到的问题及解决办法

flutter混编Android篇