Flutter圈子Android开发经验谈Android技术知识

简述Flutter集成到Android原生项目

2020-04-06  本文已影响0人  闲庭

开发集成环境
[✓] Flutter (Channel unknown, v1.12.13+hotfix.8, on Mac OS X 10.14.6 18G103, locale zh-Hans-CN)

接触使用Flutter也有段时间了,利用假期来梳理下在Flutter在使用层面的一些混编知识点,其实整理起来会发现原生与Flutter的混编原生与RN的混编相似度很大,其实所有的跨平台框架谈到和原生混编核心也就是方法调用和消息通信,自然很相似了,这里简单列以下几点(这里就不讲述Flutter的环境搭建了):
一、简述Flutter集成到Android原生项目
二、Android原生以AAR形式集成Flutter项目
三、Flutter与原生的消息通信
四、Flutter中如何使用原生控件/组件
五、Flutter升级及开发中遇到的问题汇总

image.png

在现有Android项目中集成Flutter项目,可参考官网方法Add Flutter to existing app
当然也可按照下列步骤操作即可。

1、 新建Flutter项目,选择Flutter Module类型

2、 在Android项目中集成Flutter项目

在宿主项目app下的的 build.gradle 里面,android {} 下修改:

android {
  //...
  compileOptions {
    sourceCompatibility 1.8
    targetCompatibility 1.8
  }
}

如何在原生项目中引入Flutter模块

方式一:主module通过模块依赖方式来依赖flutter

将flutter作为module,然后native主工程引入进来。这种方式适合参与人数比较少的项目,如果有多人协作开发的大型项目就不合适了,因为其他人首先要配置Flutter环境,而且团队里面其他人还要配置module的依赖,都要熟悉flutter,成本是很高的。

方式二:通过aar包引入

3、在Android项目中加载Flutter页面:

以上是Android原生项目中集成Flutter步骤。


这样就实现了 Android 原生跳转到 Flutter 页面进行渲染, 可以边开发,边编译看效果了。

注意:文中暂时以第一种方式集成,稍后在【二、Android原生以AAR形式集成Flutter项目】 会详细讲解方式二的使用。

上一篇下一篇

猜你喜欢

热点阅读