1、创建Android项目
如果已经有Android项目,可以直接使用;没有就创建,很简单。
2、创建Flutter模块
进入Android项目的同一层目录(bugfix/AndroidProject),在终端里执行命令:
$ cd bugfix
$ flutter create -t module flutter_ui
创建flutter_ui的项目模块,在该项目文件夹中有个.Android的隐藏文件(shift+command+G),里面包裹了安卓库的工程模块。
可以尝试yogaGradle编译这个库,但不是必需的步骤
$ cd .android/
$ ./gradlew flutter:assembleDebug
编译后会在.android/Flutter/build/outputs/aar/路径下产生flutter-debug.aar的文件。

3、将Flutter模块依赖添加到主项目
1.打开你的Android工程的settings.gradle,添加如下代码:
include ':app' // assumed existing content
setBinding(new Binding([gradle: this])) // new
evaluate(new File( // new
settingsDir.parentFile, // new
'flutter_ui/.android/include_flutter.groovy' // new
))
2.点击sync,完成后,到APP目录的build.gradle文件把依赖加上
dependencies {
implementation project(':flutter')
}
3.再次sync,完成后,则Flutter添加完毕,可以开始混合开发了。
4、在Native APP代码中国直接调用Flutter模块
1.通过使用Flutter.createView,可以将Flutter的view添加到kotlin代码中:

5、使用热重载
热重载指的是不用重新启动就看得到修改后的小工,类似web开发时保存自动热部署。
进入flutter模块,执行命令:
flutter_ui zl$ flutter attach
Waiting for a connection from Flutter on MI 8 SE...
启动app,控制台可以看到如下信息:

可以在flutter_ui中编辑Dart code,然后再终端输入r来使用热重载,也可以在浏览器中输入上面的url来查看断点、分析内存和其他的调试任务。
网友评论