【问题标题】:Unable to protect the code from reverse engineering in eclipse无法在eclipse中保护代码免受逆向工程
【发布时间】:2019-03-19 12:02:28
【问题描述】:

我正在处理 Eclipse 中的旧 android 项目。为此,我试图在进行逆向工程时保护代码(我知道 100% 的混淆是不可能的,但试图为源代码提供一些保护)。为此,我已经这样实现了

project.properties

proguard.config=${sdk.dir}/tools/proguard/proguard-project.txt

proguard-project.txt

-dontwarn org.simpleframework.xml.stream.**
-dontwarn roboguice.**
-ignorewarnings
-dontshrink
-dontoptimize

使用此工具后,我正在导出签名的 APK 文件,但我可以使用这些在线工具(tool1tool2)从 apk 文件中提取源代码。任何人都可以考虑通过在 Eclipse 中使用 Proguard 来保护代码

【问题讨论】:

  • 使用 allotri 进行代码混淆。

标签: android proguard reverse-engineering


【解决方案1】:

删除

-dontshrink
-dontoptimize

您希望缩小和优化代码!

-dontwarn org.simpleframework.xml.stream.**
-dontwarn roboguice.**
-ignorewarnings

之后,apk 很可能无法在设备或模拟器上运行,因此您需要一些额外的规则才能运行。

这取决于您的代码和您使用的库,您必须弄清楚这一点。我发现了这篇关于它的好文章,你可以忽略提到 android studio 的内容,只需在你的 proguard-project.txt 中使用 proguard 规则 https://guides.codepath.com/android/Configuring-ProGuard

继续测试发布的 apk 并搜索每个库或崩溃,以便在您的应用中实现最大程度的混淆!

【讨论】:

    【解决方案2】:

    100% 混淆是不可能的,但我们可以提供一些保护,如下所示

    Eclipse

    打开 build.gradle

    它将在eclipse中的以下位置

    并提到

    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    

    正如提到的here,它将在android内部

    Android Studio

    打开 build.graddle(应用级别而非项目级别)

    在eclipse中提到minifyEnabled true

    【讨论】:

      猜你喜欢
      • 2017-05-28
      • 1970-01-01
      • 2018-06-22
      • 1970-01-01
      • 2020-05-02
      • 2017-09-21
      • 2019-10-11
      • 2011-11-18
      • 2021-02-08
      相关资源
      最近更新 更多