FlutterBoost Flutter-Native 混合解决方案开源项目

我要开发同款
xplanet2019年05月21日
83阅读
所属分类Java其他Dart
授权协议MIT

作品详情

FlutterBoost是一个Flutter插件,它可以轻松地为现有原生应用程序提供Flutter混合集成方案。FlutterBoost的理念是将Flutter像Webview那样来使用。在现有应用程序中同时管理Native页面和Flutter页面并非易事。FlutterBoost帮你处理页面的映射和跳转,你只需关心页面的名字和参数即可(通常可以是URL)。

基本用法概念

所有页面路由请求都将发送到Native路由器。Native路由器与NativeContainerManager通信,NativeContainerManager负责构建和销毁NativeContainers。

使用FlutterBoostNativeContainer用Native代码打开Flutter页面FLBFlutterViewContainer*vc=FLBFlutterViewContainer.new;[vcsetName:nameparams:params];[self.navigationControllerpresentViewController:vcanimated:animatedcompletion:^{}];

Android

publicclassFlutterPageActivityextendsBoostFlutterActivity{@OverridepublicvoidonRegisterPlugins(PluginRegistryregistry){//registerflutterpluginsGeneratedPluginRegistrant.registerWith(registry);}@OverridepublicStringgetContainerName(){//specifythepagenameregisterinFlutterBoostreturn"sample://firstPage";}@OverridepublicMapgetContainerParams(){//paramsofthepageMap<String,String>params=newHashMap<>();params.put("key","value");returnparams;}}

或者用Fragment

publicclassFlutterFragmentextendsBoostFlutterFragment{@OverridepublicvoidonRegisterPlugins(PluginRegistryregistry){GeneratedPluginRegistrant.registerWith(registry);}@OverridepublicStringgetContainerName(){return"sample://firstPage";}@OverridepublicMapgetContainerParams(){Map<String,String>params=newHashMap<>();params.put("key","value");returnparams;}}使用FlutterBoost在dart代码打开页面

Dart

FlutterBoost.singleton.openPage("pagename",{},true);使用FlutterBoost在dart代码关闭页面FlutterBoost.singleton.closePageForContext(context);作者

阿里巴巴闲鱼终端团队

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论