android多个module打包aar,AndroidSutido多Module打包aar合并

本文介绍了在Android项目组件化开发中,如何解决SDK打包时生成多个aar的问题。通过介绍一个优化后的fat-aar.gradle脚本,详细阐述了集成方法,包括拷贝脚本、引用、依赖方式修改等步骤,以及在遇到第三方aar远程依赖、资源Id找不到等问题时的解决策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、概述

在Android项目开发过程中,为了达到解耦的目的,组件化是一个非常好的思路,并且技术比较成熟,实现起来投入的人力成本和时间成本不是很高。是一个投入产出比比较高的方案。

但是,在组件化工程中,却面临着一个非常尴尬的问题,组件化的作用是将功能解耦,打包的时候可以选择需要的组件进行,在apk项目中这是一个非常大的优势。但是对于开发SDK来说,这引起了另外一个问题:SDK本身就是一个Library,打包的时候会自动打成一个aar包,但是对于SDK依赖的组件,也都是一个个的Library,这样就导致为了编译一个SDK,会生成多个aar文件(每个组件都会打包成一个独立的aar)。另外如果SDK本身又集成了第三方的aar包,此时项目对接的时候,就必须集成多个aar。集成非常不方便且不便于管理。

这就需要我们对多个aar进行合并。但是非常遗憾,AndroidStudio本身并没有提供类似的方法。好在github上有个大神开源了一种方案合并方案fat-aar,但是该方案对于2.3以上版本的gradle支持不是很好,会有很多意想不到的坑。且作者已经N久没有更新和维护了。

针对上述问题,我们需要对fat-aar.gradle脚本做优化,一个是对gradle2.3以上版本做兼容处理,一个是对合并过程中报错的地方做优化。优化的内容在下面会逐步提到。

下面会详细介绍集成方法和注意事项。

2、集成方法

(1)、将优化后的fat-aar.gradle拷贝到module的根目录下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值