由于项目中引用了第三方jar包,在这个jar包中在跑monkey的时候有一个空指针异常,因此想到了修改jar包文件,主动增加非空判断。这里记录一下对应过程。
-
首先新建一个与jar包包名一致的module。
-
将需要替换的class文件如(A.class)转换为java文件(B.java),并且引入Module当中,删除jar包中的对应文件(A.class)。
-
修改B.java文件,加上非空判断。
-
编译Module,通过gradle的build操作获取到aar,其中含有编译好的替换成功B.class,拷贝到原来的jar包中,替换成功