步骤一: 新建一个原生的安卓工程,然后同级目录下再新建flutter工程。也就是安卓工程和flutter工程是并列在同一目录下的。项目建完后,在安卓项目的settings.gradle文件里写上下面的配置信息:
setBinding(new Binding([gradle:this]))
evaluate(new File(
settingsDir.parentFile,'flutter_module/.android/include_flutter.groovy'
))
flutter_module是我新建flutter项目的名称。
步骤二: 在安卓项目的app目录下的build文件,引入下面的代码:
implementation project(':flutter')
步骤三: 新建一个名字为FlutterAppActivity的文件,继承FlutterActivity。
class FlutterAppActivity : FlutterActivity() {
private var initParams:String? = null
companion object{
val INIT_PARAMS = "initParams"
fun start(context: Context,initParams:String){
val intent = Intent(context,FlutterAppActivity::class.java)
intent.putExtra(INIT_PARAMS,initParams)
context.startActivity(intent)
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
initParams = intent.getStringExtra(INIT_PARAMS)
}
override fun getInitialRoute(): String{
return initParams ?: super.getInitialRoute().toString()
}
}
步骤四: 最后实现点击事件进行测试。已测,可以实现跳转。
to_flutter.setOnClickListener {
FlutterAppActivity.start(this,"route2")
}
|