Android工程接入Flutter module
2018-10-23 本文已影响22人
sssong_2017
该篇文章介绍在已有Android工程中嵌入flutter module,以达到混合开发
创建Flutter module
在当前project下 运行命令
flutter create -t module my_flutter(my_flutter为生成的flutter module名称)
增加配置代码
(1) 在工程的settings.gradle增加以下配置
(2)在app (假如你的Android应用名称为app)的build.gradle文件下dependencies增加如下依赖
其中flutter工程为创建Flutter module过程自动生成的
在Android工程中创建Flutter的UI(调用Flutter中的dart编写的widget)
Flutter提供两种方法引入,一种是View,一种是Fragment,View如下
其中,第二个参数是Lifecycle对象, 第三个参数为route,这个参数Flutter端可以通过window.defaultRouteName获取,利用它flutter可知道要创建哪个widget.
同理 Flutter.createFragment(String route)可生成FlutterFragment
Flutter module支持hot reload (热重载)
进入到flutter module目录下
执行命令 flutter attach 即可
签名打包
引入Flutter module后,对原生工程构建基本没影响,按常规操作即可, 编译模式可参考之前我写的文章Flutter编译模式
这里说明的一点是 原生工程的minSdkVersion 为16, 低于16会报错表示不支持flutter