FlutterEngine 在 Pad 上的演变
摘要
贝壳在iPad和安卓平板(这两种后续统称为PAD)上面进行了多款产品的开发;为了提高开发效率,实现一套UI跨端展示,贝壳使用Flutter进行了大量实践。
在手机上屏幕比较小,一般一个页面就是一个完整的Flutter页面,这种场景使用一个FlutterActivity容器进行加载就可以了。然而在PAD上,屏幕比较大,交互更加的丰富;由于业务上大量的用到了地图和一些H5页面,会出现同屏Native和Flutter混合的情况,会使用到FlutterFragment和Fragment在同屏切换的场景;因此我们不得不采用Native+Flutter的混合方案,FlutterEngine作为Native和Flutter桥连的容器在这中间扮演着重要的角色。
这期间贝壳PAD经历了单FlutterEngine到多FlutterEngine再到Flutter2.0的FlutterEngineGroup这一系列的容器改变,下面会详细的介绍FlutterEngine在PAD上的演变过程。
欢迎在评论区写下你对这篇文章的看法。