安卓&混淆者?
我正在尝试在我的 Android 应用程序中使用 proguard。 proguardGui 接受一个输入和一个输出,输入需要一个 jar 文件。但是android的APK文件不包含任何jar?
我尝试传递 apk 文件以及 apx 内的 dex 文件,但 proguard 不接受它们作为输入。 proguard 只接受 jars、ears、wars、zips 那么我如何在我的 Android 应用程序中使用 proguard gui?
I am trying to use progurard with my android applications.
The proguardGui accepts an input, and an output, the input requires a jar file. but the APK file for android doesn't contain any jar?
I tried passing the apk file, and also the dex file inside the apx, but proguard doesn't accept them as an input. proguard only accepts jars, ears, wars, zips so how can i use the proguard gui with my android application?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我在这里详细介绍了如何执行此操作的完整说明: http:// www.androidengineer.com/2010/07/optimizing-obfuscating-and-shrinking.html
基本上,您必须首先为您的 Android 项目设置一个 Ant 构建,这相对来说比较轻松。然后,在 Java 编译步骤和 DEX 步骤之间添加 ProGuard Ant 目标。请记住,ProGuard 仅适用于 Java 字节码,而 Android 使用使用 .dex 字节码的 Dalvik JVM,因此这就是它发生在这两个步骤之间的原因。
I detailed complete instructions on how to do it here: http://www.androidengineer.com/2010/07/optimizing-obfuscating-and-shrinking.html
Basically, you have to first set up an Ant build for your Android project, which is relatively painless. Then, you add in the ProGuard Ant target between the Java compilation step and the DEX step. Remember, ProGuard only works on Java bytecode, and Android uses the Dalvik JVM which uses .dex bytecode, so that's why it happens between those two steps.
实际上Android SDK已经集成了ProGuard。
您只需取消注释文件project.properties(由Android SDK 17或更高版本创建或更新)中的“proguard.config=.....”行,即可启用ProGuard。
来源: ProGuard 示例 ->一个完整的Android应用程序
Actually the Android SDK already integrates ProGuard.
You only need to uncomment the line "proguard.config=....." in the file project.properties (created or updated by Android SDK 17 or higher), in order to enable ProGuard.
Source: ProGuard examples -> a complete Android Application