flutter_thrio makes it easy and fast to add flutter to existing mobile applications, and provide a simple and consistent navigator APIs.
最近版本更新会很快,主要是增加新特性,涉及到混合栈的稳定性的问题应该不多,可放心升级,发现问题加 QQ 群号码:1014085473,我会尽快解决。
不打算好好看看源码的使用者可以放弃这个库了,因为很多设定是比较死的,而我本人不打算花时间写太多文档
FlutterEngine
的复用,还支持 FlutterViewController
和 FlutterActivity
的复用,这保证了 Flutter
混合栈框架在内存占用上是最优解push
和 pop
,也提供了 remove
和 popTo
的能力,目前唯一能做到的 Flutter混合栈开源框架push
和 pop
的路由传参能力,可以让状态参数在页面间传递,省去很多 channel 通讯的必要Flutter
开发支持直接传递对象类型Flutter
的 Navigator
来打开对话框等弹窗App
中运行多份 Flutter
代码,目前唯一能做到的 Flutter
混合栈开源框架Flutter
页面的导航栏present
,技术上完全可以实现,甚至使用者可以通过传参的方式在 builder
中自己 present
,但为了 API 设计上统一,作者选择不支持 present
,demo 中其实是有 present
的示例的,建议 present
的时候外套一个 UINavigationController
,可以保证不管何时 push
时 API 都是有效的,flutter_thrio 是支持多 UINavigationController
的,有一点需要注意的是,如果多个 UINavigationController
内嵌于 UITabBar
中时,要注意无法同时将多个 FlutterViewController
呈现,不支持是因为支持的话无法进行引擎复用。Fragment
,原因是复杂性无法解决,作者目前不能够保证提供一个通用稳定的版本。FlutterViewController
、FlutterActivity
、FlutterAppDelegate
等GeneratedPluginRegistrant
的 registerWithRegistry
方法了,因为框架会自动调用技术没有好与不好,使用在适合的场景才是最好的。
Flutter 在 客户端的适用场景会越来越广,个人比较看好。
目前在移动端,一个好的 Flutter 混合栈框架是必须的,让你可以在大多数的页面上采用 Flutter 来开发从而达到提效的目的,少数涉及到 Flutter 不能很好支持的页面上继续使用原生开发,从而规避的 Flutter 的坑。
如果所开发的是一个全新的 App,以后也不会涉及到老的代码的复用,或者不会涉及到 Flutter 支持不够良好的一些技术上的坑,确实可以考虑纯 Flutter。
但4的情形极少,所以大部分的 Flutter 在引入的时候,都应该考虑以 Flutter 混合栈的方式进行,坑不是用来踩的,而是绕道而过。