aar怎么用 flutter_Flutter: 以 aar 形式嵌入 android 中的方案和原理

本文详细介绍了Flutter以AAR形式嵌入Android项目的方法和原理,包括Flutter的编译产物、官方编译AAR方案以及使用fat-aar编译AAR的步骤,帮助开发者理解并实现Flutter与Android的无缝集成。
摘要由CSDN通过智能技术生成

前言

Flutter 以 aar 的方式接入 native 项目的优点是侵入性低,不影响业务组其他成员。 最开始的时候在网上看了一下关于 aar 导入 android 的博客感觉稍乱,所以在此整理一下,防止大家浪费时间重复趟坑。

Flutter 编译产物

首先需要先了解一下 flutter 的编译产物有哪些,然后才能更好地理解如何编译 aar。

以一个嵌入 flutter aar 的 release 版本为例看一下里面的内容:

可以很明显的看到三个和 Flutter 先关的文件:libflutter.so: flutter engin

libapp.so:dart 源码相关

flutter_assets:flutter 资源文件

其实还有一个文件:classes.dex: native 代码,比如 java 我们使用 dex2jar 工具看一下 classes.dex 的内容:

可以看到里面有关于 Flutter 的 native 代码,其实可以称它为: flutter_embedding.jar,里面包含了 FlutterActivity,FlutterView 等,它提供了 native 项目嵌入 flutter 的能力,比如我们 natvie 要创建一个 Flutter 页面肯定要继承 FlutterActivity/FlutterFragment。

总结一下 android release 下 flutter 的编译产物包含 4 部分:libflutter.so: flutter engin</

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值