无法保护代码免受Eclipse中的逆向工程

时间:2018-10-15 05:38:21

标签: android proguard reverse-engineering

我正在处理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来保护代码

2 个答案:

答案 0 :(得分: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并为每个库进行谷歌搜索,否则您的脸蛋会崩溃,以使您的应用程序获得最大程度的混淆!

答案 1 :(得分:0)

无法进行100%混淆,但是我们可以提供以下保护措施

Eclipse

打开build.graddle

它将在Eclipse中的以下位置

enter image description here

并提及

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

它会像提到的here一样位于android内部

Android Studio

打开build.graddle(应用程序级别而不是项目级别)

enter image description here

月食中提到的minifyEnabled true