1. 程式人生 > >java防止反編譯之proguard混淆代碼

java防止反編譯之proguard混淆代碼

proguard 混淆、jar

proguard5.3下載地址:http://down.51cto.com/data/2316123

  1. 從eclipse中導出工程的jar包(這個就不詳細說了)

  2. 安裝proguard後打開bin目錄下的proguardgui.bat啟動proguard如下圖所示:

    技術分享

  3. 點擊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混淆代碼