我希望最小化我的应用尺寸,以及避免应用程序进行逆向工程。任何人都能帮忙解决简单的问题吗?
答案 0 :(得分:20)
Proguard是android eclipse插件的一部分,因此您不必手动调用它。 您只需要在构建中激活它。
要启用ProGuard以使其作为Ant或Eclipse构建的一部分运行,请在proguard.config
文件中设置<project_root>/project.properties
属性。路径可以是绝对路径或相对于项目根目录的路径。
在某些情况下,proguard.cfg文件中的默认配置就足够了。但是,ProGuard很难正确分析许多情况,它可能会删除它认为未使用的代码,但您的应用程序实际需要。一些例子包括:
默认的proguard.cfg文件试图涵盖一般情况,但是您可能会遇到异常,例如ClassNotFoundException,当ProGuard删除应用程序调用的整个类时会发生这种情况。
当ProGuard通过在proguard.cfg文件中添加-keep
行删除代码时,您可以修复错误。
答案 1 :(得分:9)
1)从“http://sourceforge.net/projects/proguard/files/”下载最新的程序。目前最新版本是proguard4.7
2)用最新下载的proguard文件夹替换“SDK \ tools \ proguard路径”的“bin”和“lib”文件夹。
3)在eclipse中检查SDK位置,查看其中的空白区域,然后转到窗口&gt;偏好&gt; Android系统。如果有空格,则将其替换为:
Android SDK的Pathe
4)检查proguard.cfg文件是否在项目的根文件夹中,并在android项目的project.properties文件中添加“proguard.config = proguard.cfg”。
5)现在导出你的项目以获得obfusticated apk。
答案 2 :(得分:0)
是的,可以使用项目中的启用程序来限制逆向工程的应用程序您应该阅读本教程 Proguard for Android app
并且为了最小化应用程序大小,您应该起诉.9patch图像和选择器..
答案 3 :(得分:0)
你可以使用proguard。它是Google为此目的提供的工具。请参阅此处的官方指南:
答案 4 :(得分:0)
您可以尝试使用Dexguard https://www.guardsquare.com/dexguard,可以添加更多层混淆,应用字符串加密,类加密和反射。它不是免费的,但它超越了proguard。
PD)这不是垃圾邮件,我与此产品没有任何关系,只是信息。