如何在我的项目中激活 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);
}

我应该把它写到我的应用程序中吗?

要在项目中简单地激活启用:

  1. 在项目中创建一个名为 <project_root>/proguard.cfg 的文件。
  2. 在您的<project_root>/project.properties 中,添加proguard.config=proguard.cfg

然后,您需要在 proguard.cfg 文件中为您的项目定义 Proguard 配置。您可以从 Proguard 网站阅读有关此文件的各种 proguard 选项的信息。您可以在文档中阅读有关将 Proguard 与 Android 配合使用的更多信息。

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

编辑

progaurd.cfg 会在您通过 eclipse 创建 Android 项目时自动创建。

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

proguard.config = proguard.cfg

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

最新更新