注意:全文极短,适用于各种反编译小白,程序小白,读完仅需2分钟!
我们经常使用第三方库,但当我们遇到一些个性化需求,第三方库没有预留接口的时候,怎么办?
比如我们项目中用到友盟的社会化分享组件,但是友盟的分享对话框实在是丑!而他们又没有留下足够的接口支持我的个性化需求,比如我想给对话框加个圆角背景,库中并无该接口,怎么办?
修改第三方jar包,注入代码?但是我是一个反编译小白,唯一会用的反编译工具就是gui,怎么办?
下面以“给友盟分享对话框加圆角背景”为例,介绍 如何简单快速的将自己的代码注入第三方jar包中
代码定位
首先我们要看第三方jar包的源码,定位到具体需要修改的文件位置。
用gui看了看源码,对话框的构造过程在 umeng_social_shareboard.jar
中 UMActionFrame
文件的createShareboardLayout
方法里,整个过程都是代码编写。
而UI的个性化配置,是在ShareBoardConfig
文件中:
boolean mTitleVisibility;
String mTitleText;