案例需求:修改EntryProxy的onCreate方法,删除if判断(既删除红框里面的蓝框代码)
老aar.png
解压aar包
unzip sdk.aar -d sdk
得到解压好的文件夹
sdk.png
解压classes.jar
unzip sdk/classes.jar -d classes
得到classes文件夹
将aar引入任意工程,打开指定类的class,复制全部代码,并生成同样包名的该类
新创建类-原.png
修改指定位置代码,根据java文件生成class文件
找到上图蓝色框代码并删除
新创建类-后.png
run项目,在对应<module>/build/intermediates/javac/debug/<class>即可找到修改过并打包好的class文件
修改后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查看修改是否成功
结果.png
新aar.png