优点:
- 依赖一个包含 Flutter 产物的 aar 包,这个的好处就是其他不开发 flutter 的同学可以不用配置 flutter 环境,它和其他模块包无异
2、源码依赖
打开原生项目的 setting.gradle 文件:
include ‘:app’
rootProject.name = “NativeToFlutter”
// 加入如下代码
setBinding(new Binding([gradle: this]))
evaluate(new File(
‘flutter_lib/.android/include_flutter.groovy’
))
include ‘:flutter_lib’
在 app 项目的 build.gradle 依赖 flutter module 模块
dependencies {
implementation project(‘:flutter’)
}
缺点:
- 需要 flutter 环境,并且各个开发人员环境不一致,导致集成因为版本不一致报各种错误
2、原生接入 flutter 页面
flutter 依赖提供了 FlutterActivity 来直接加载 flutter 页面,我们只需要在清单文件中配置该 Activity :
<activity
android:name=“io.flutter.embedding.android.FlutterActivity”
android:theme=“@style/LaunchTheme”
android:configChanges=“orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fo