Android Studio 打带混淆得aar包

一、打包一个module为aar包

1.新建一个module

如何新建就不用说了,新建好了之后,需要配置module的gradle文件,将混淆打开,如下图
在这里插入图片描述

2.开始打aar包

在Android Studio右侧,打开gradle功能项,选择需要打包的module,因为需要打混淆的aar包,所以执行assemble这个task,点击执行即可,具体如下图
在这里插入图片描述

3.查找生成的aar包

生成的aar包路径在当前module的build/outputs/aar文件夹下,具体如图,图中的debug.aar是未混淆的,release.aar是混淆的
在这里插入图片描述

4.问题(release.aar包是空的)

执行完上面的步骤,虽然生成了aar文件,但是aar包里面是空的,没有相应的class文件,具体如图,从图里可以看到,classes.jar下面没有文件,
在这里插入图片描述

5.问题分析与解决

这里分析没有找到实际的文档来支持,可以说是我根据实际情况推测出来的吧,因为Android Studio默认会帮我们添加相应的混淆规则,其中有一个很重要的点就是AS会把无用的包给清理掉,所以打的aar包里面的文件应该是因为这个而被清理掉了,那么解决的办法就是去掉这个规则,在module的proguard-rules.pro文件中添加一条指令 -dontshrink,具体如图,
在这里插入图片描述
第二条可以无视,因为咱们的aar包总有一些class是需要暴露出来的,所以第二条指令就是保留那些不需要混淆的类,根据自己需要进行编写就好,添加好了之后,再从第2步开始执行一遍,找到aar包后,查看文件已经被混淆,如图,可以看到,需要混淆的,与不需要混淆的都在里面了
在这里插入图片描述

这样将某一个module打包成aar,就完事了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值