如何在我的项目中激活proguard?

时间:2012-06-25 06:44:01

标签: android proguard

我想阻止我的应用程序被其他人反向设计和反编译。如何激活项目中的proguard以帮助我实现这一目标?

-keep public class * extends android.view.View {
    public <init>(android.content.Context);
    public <init>(android.content.Context, android.util.AttributeSet);
    public <init>(android.content.Context, android.util.AttributeSet, int);
    public void set*(...);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}

我应该将此写入我的申请表吗?

2 个答案:

答案 0 :(得分:4)

只需激活项目中的启用:

  1. 在项目中创建名为<project_root>/proguard.cfg的文件。
  2. <project_root>/project.properties中,添加proguard.config=proguard.cfg
  3. 然后,您需要在proguard.cfg文件中为项目定义Proguard配置。您可以从Proguard website了解此文件中的各种proguard选项。您可以在documentation中阅读有关使用Proguard with Android的更多信息。

答案 1 :(得分:3)

Progaurd会混淆代码并使其难以进行逆向工程。如果您可能想要重新设计代码,则需要保留proguard生成的映射文件。我想说,将它用于任何市场构建都非常方便。

修改

当您通过eclipse创建Android项目时,会自动创建

progaurd.cfg。

您现在可能想为您的项目启用progaurd。可能有一个文件说default.properties,其中包含应用程序的目标。您可能需要添加以下行

proguard.config = proguard.cfg

为您的应用程序启用progaurd。您现在已经准备好启用progaurd的应用程序了。如果成功配置了progaurd,则在导出apk时,您可能会看到一个文件夹progaurd,其中包含一个文件列表。 (请参阅提供的链接中启用Progaurd)。希望它有所帮助