1.使用jd-gui查看待修改文件的代碼
把a(bǔ)ar肄渗、jar镇眷、class文件用jd-gui打開,可以查看代碼翎嫡,但不能編輯欠动,需要把代碼復(fù)制出來。
2.修改aar中的代碼
新建一個(gè)android項(xiàng)目惑申,在項(xiàng)目中創(chuàng)建一個(gè)module翁垂,module的包名要和待修改文件的包名一致,項(xiàng)目目錄如下:
創(chuàng)建一個(gè)java文件硝桩,把第1步中復(fù)制的代碼粘貼進(jìn)來沿猜,并進(jìn)行需要的代碼修改。
3.編譯java文件為class
build一下第2步中創(chuàng)建的android項(xiàng)目
Android studio —— Build —— Rebuild Project
build完成后查看module中的build文件夾碗脊,找到編譯后的class文件啼肩,路徑為
/build/intermediates/javac/debug/
4.解壓待修改的aar包
unzip test.aar -d testDir
解壓aar中的classes.jar包
unzip classes.jar -d classesDir
classes解壓完成里面有很多class文件橄妆,把想修改的文件用jd-gui打開復(fù)制代碼即可
5.重新打包c(diǎn)lasses.jar
用第3步中的class文件替換第4步中classesDir文件夾中的原文件,重新壓縮為classes.jar
jar cvf classes.jar -C classesDir/ .
6.重新打包aar
用新的classes.jar替換掉testDir中的原文件祈坠,重新壓縮為aar
jar cvf new.aar -C testDir/ .