我有一个Android项目,最近经过ProGuard混淆后发布到市场上。
项目顺利导出,但是我怎么知道它已经被混淆了呢?有什么方法可以验证混淆是否成功?
我有一个Android项目,最近经过ProGuard混淆后发布到市场上。
项目顺利导出,但是我怎么知道它已经被混淆了呢?有什么方法可以验证混淆是否成功?
请查找 dump.txt
、mapping.txt
、seeds.txt
和 usage.txt
文件。它们可能在你的项目目录下的 proguard
文件夹中。这些文件是在运行ProGuard混淆代码时创建的。
这些文件包含有关混淆信息的内容,特别有用的是 mapping.txt
文件,其中显示了ProGuard将你的各种成员名称转换为什么名称。
http://www.taranfx.com/decompile-reverse-engineer-android-apk
免责声明: 我不是decompileandroid.com的所有者,也没有被付费推广它。我是一个开发者,对这项服务感到满意。
实际上,有一种比获取多个不同的工具并将其中一个的输出传递给另一个更简单的方法(当然这样可以更好地控制正在进行的操作)。你可以使用这项服务。
基本上,您只需上传一个.apk文件,它就会为您完成所有这些步骤。然后,您可以下载一个包含反编译源代码的.zip文件。
您可以先上传以调试模式构建的.apk文件,然后再上传以发布模式构建的.apk文件。只需确保在发布构建的build.gradle
文件中设置了minifyEnabled
标志为true
。
在我的情况下,差异非常明显-在缩小版构建中,我的大多数类都被命名为a、b、c等。
proguard
文件夹?如果没有,我想它可能没有正确运行。 - jakebasile