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);作者阿里巴巴闲鱼终端团队
评论