Android修改aar包中的类文件并重新打包

简介: Android修改aar包中的类文件并重新打包

案例需求:修改EntryProxy的onCreate方法,删除if判断(既删除红框里面的蓝框代码)

1686638014502.png

老aar.png

解压aar包

unzip sdk.aar -d sdk

得到解压好的文件夹

1686638034638.pngsdk.png

解压classes.jar

unzip sdk/classes.jar -d classes

得到classes文件夹

1686638055932.png

将aar引入任意工程,打开指定类的class,复制全部代码,并生成同样包名的该类


1686638074833.png

新创建类-原.png

修改指定位置代码,根据java文件生成class文件

找到上图蓝色框代码并删除

1686638099000.png

新创建类-后.png

run项目,在对应<module>/build/intermediates/javac/debug/<class>即可找到修改过并打包好的class文件

1686638118565.png

修改后class.png

打包新aar

将生成的class替换上面解压出的class并重打包classes.jar

jar cvf classes.jar -C classes/ .

将新生成的classes.jar替换上面解压出的sdk目录下的classes.jar,然后打包成新的aar

jar cvf sdk-m.aar -C sdk/ .

使用新生成的sdk.aar替换原来的sdk.aar查看修改是否成功

1686638137008.png

结果.png


1686638152536.png

新aar.png

相关文章
|
7天前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
17 1
|
7天前
|
Shell Android开发
Android系统 init.rc文件详解
Android系统 init.rc文件详解
26 0
|
8天前
|
存储 Java API
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
Android 浅度解析:mk预置AAR、SO文件、APP包和签名
47 0
|
9天前
|
JavaScript Java Maven
云效产品使用常见问题之android sdk 构建出aar后,上传到私有maven仓库失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
9天前
|
敏捷开发 Java 机器人
云效产品使用常见问题之打包后的Android应用获取下载地址失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
7天前
|
Java Android开发 C++
Android源代码定制:MK文件执行顺序|属性覆盖
Android源代码定制:MK文件执行顺序|属性覆盖
16 2
Android源代码定制:MK文件执行顺序|属性覆盖
|
7天前
|
存储 Java API
Android系统 文件访问权限笔记
Android系统 文件访问权限笔记
40 1
|
7天前
|
移动开发 Java Unix
Android系统 自动加载自定义JAR文件
Android系统 自动加载自定义JAR文件
27 1
|
7天前
|
Android开发
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
Android源代码定制:添加customize.mk文件进行分项目和分客户的定制
3 0
|
8天前
|
存储 安全 Ubuntu
Android 生成平台应用签名keystore文件
Android 生成平台应用签名keystore文件
8 0