废话不多说直接进入正题,flutter的混合开发(android方向)小记
主要从以下几点顺序开始进入(混合方式、创建、集成、开发)
1、混合方式对比
源码集成:本地项目源码集成。
产物集成:Flutter项目单独开发,开发完成后发布成aar包或者iOS的framework形式,原生项目依赖flutter输出的制品。
2、创建flutter module (在原生项目同级目录下进行创建)
(1)、通过命令
flutter create -t module my_flutter
(2)、通过AS 创建
生成目录:
3、集成
(1)、在根目录的setting.gradle中添加
(2)、在app.gradle添加:
注意:在拉取flutter代码的时候需要直接拉取到和原生项目同一级别的目录下,
4、开发
- 原生跳转到flutter:
(1)、原生中的代码
Android从原生跳到Flutter模块的黑屏问题,在网上看到很多说设置透明主题的但是没有用,后来看到一种先隐藏显示,等待渲染好第一帧后才显示flutter页面的方法。这里要注意一点要在布局中先把flutter的Container布局设置为InVisible状态,不要使用Gone,用gone的话是不显示也不渲染,用InVisible不显示但是会渲染界面占位置,等待渲染完成后再设置为Visible即可。
(2)、flutter中的代码
2、集成Flutter_boost:(具体使用请看官网)