Android中修改第三方Jar

一.简述

最近工作中,客户项目中出现了一个问题,根据日志可以得知是某个插件出错,需要修改插件代码,只需要修改一行代码就行,但是插件源码找不到了,可能是时间比较久远,但是问题又必须修改,所以只能想办法。

二.如何修改jar

  • 导出项目工程
  • 找到相关插件Jar
  • 通过Android Studio 查看Jar源码
    这里写图片描述
  • 再Src目录下新建 要修改java文件,包名也必须相同

    要修改的java文件目录org.zywx.wbpalmstar.plugin.uexinfocenter.zdtq
    在src源码下新建同样的目录

  • 修改你要修改的源码

以上操作完成之后就完成了源码的修改,将要修改的源码打成jar

三.将Android Studio 中java文件打成jar

在项目的gradle文件中编写,dradle脚本代码
 //删除之前的jar
    task deleteOldJar(type: Delete) {
        //删除存在的
        delete 'build/libs/InfoCenter.jar'
    }
    task makeOneJar(type: org.gradle.api.tasks.bundling.Jar){
//        jar的名称
        baseName  'InfoCenter'
        //从哪里打包class文件
        from('build/intermediates/classes/debug/org/zywx/wbpalmstar/plugin/uexinfocenter/zdtq/')
//        jar包的目录结构
        into('org/zywx/wbpalmstar/plugin/uexinfocenter/zdtq')
        //去掉不需要打包的目录和文件
        exclude('BuildConfig.class', 'R.class')
        //去掉R$开头的文件
        exclude{ it.name.startsWith('R$');}

    }


    makeOneJar.dependsOn(deleteOldJar, build)

编写完成之后,同步下工程代码,最终在右侧的Tasks–>ohter 中找到自己写的任务,点击运行最终得到编译后jar文件

最终的jar文件所在目录就是build/libs/

以上全部操作完成之后,删除原来jar下相关功能的class文件,将生成jar文件放到项目中

发布了100 篇原创文章 · 获赞 75 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/baidu_31956557/article/details/81223053