java防止反編譯之proguard混淆代碼
proguard5.3下載地址:http://down.51cto.com/data/2316123
從eclipse中導出工程的jar包(這個就不詳細說了)
安裝proguard後打開bin目錄下的proguardgui.bat啟動proguard如下圖所示:
點擊Input/Output,設置輸入輸出的jar包,input就是原jar,output就是混淆後的jar。
5.點擊Input/Output中的add,添加該工程用到的jar,包括jre,以及web-info下的lib中的所有jar包,這一步如果缺少了jar,可能混淆時會報錯。(可以先將所需要的jar包copy到某個文件夾中)如下圖所示:
6.點擊shrinking配置如下圖所示:
7.點擊obfuscation配置如下圖所示:
8.點擊optimization配置如下圖所示:
9.點擊information配置如下圖所示:
10.點擊Process一欄中的Save Configuration按鈕保存pro格式的配置文件,如下圖所示:
11.用文本編輯器打開剛剛保存的pro文件,對其進行修改。如下面的例子:
加入如下代碼:
-keep public class com.cn.A{
*;
}
表示對A類以及類的所有屬性、方法進行保留
-keep public class com.cn.B{
public String name;
public static void methoadA(int,int,java.lang.String);
public static void methoadB(int,int,java.lang.String);
}
表示對OutputFrecast的name屬性、instantDay和instantMonth方法進行保留
還有很多規則,可以參考proguard使用文檔。
12.關閉proguard窗口,重新打開
13.點擊Proguard一欄中的load configuration按鈕,找到10中保存的pro文件
14.點擊process一欄中的process按鈕進行混淆,成功後如下圖所示:
java防止反編譯之proguard混淆代碼