java防止反编译之proguard混淆代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java防止反编译之proguard混淆代码相关的知识,希望对你有一定的参考价值。

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混淆代码的主要内容,如果未能解决你的问题,请参考以下文章

Android apk如何加固防止被破解(防止逆向编译)

ProGuard 代码混淆

如何防止proguard完全混淆方法

代码编译-反编译-解混淆

Android 项目的代码混淆,Android proguard 使用说明

Java代码混淆器ProGuard