Android--aar打包

文章目录
一、aar包和jar包
二、打aar包
1.Module中不含有其它aar
2.Module中嵌套第三方aar
3.fat-aar-android的简单用法
一、aar包和jar包
Android中常见的第三方库包括:.so、.jar、.aar,一般来说.so是C或C++语言的内容打包成的库。

jar包:只包含了class文件与清单文件 ,不包含资源文件,如图片等所有res中的文件。

aar包:Android库项目的二进制归档文件,包含所有资源,class以及res资源文件全部包含。将aar解压打开后,会包含AndroidManifest.xml,classes.jar,res,R.txt。

 


二、打aar包
两种打包场景:
(1)Module中不含有其它aar
(2)Module中嵌套第三方aar


1.Module中不含有其它aar
在Project中新建Module


进入到Module的build.gradle文件:
(1)将 apply plugin: ‘com.android.application’ 修改为 apply plugin: ‘com.android.library’,该Module会变成了一个library
(2)注释掉applicationId这一行。由于打包后该Module不再是一个独立的应用,而是一个其它项目的附属,所以不需要独立的applicationId

 

 

 

进入到Module的AnroidManifest.xml文件:
(1)如果有自定义的Application类,把name属性和icon属性删掉。因为打包成aar并被其它项目引用后,该AnroidManifest.xml会和所在项目的AnroidManifest.xml合并,这时会产生冲突。

 

 

 

打包aar:
进入到Gradle界面,双击该选项就编译生成aar包了

 

 

 


2.Module中嵌套第三方aar
两种解决方案:
1.解压第三方aar包,手动把第三方aar包中的class以及res资源文件,复制到自己的需要打aar包的模块中。
2.使用第三方框架库:fat-aar-android(地址)

 

3.fat-aar-android的简单用法
先看项目的整体结构:sdk是需要打aar包的模块,其中包含了一个第三方的aar包

 

 

 

1.在项目的build.gradle文件中,添加以下代码:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V7OemYOW-1627103338638)(https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/6018b512fa9ea6e7dd1e45f4cf3bb0ee)]


2.在模块的build.gradle文件中,添加apply plugin: 'com.kezong.fat-aar',应用fat-aar。

 

 

由于是libs中的aar是嵌套的,所以需要用embedembed(name: 'kssdk-ad--3.3.11-publishRelease-e2b64a3ec', ext: 'aar')


3.引入fat-aar完成,直接打包aar。
————————————————
版权声明:本文为CSDN博主「HelloSim」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45120905/article/details/119056820

posted @ 2023-03-06 11:52  新感觉  阅读(2893)  评论(1编辑  收藏  举报