Proguard 在Android使用
2015-05-15 09:45
260 查看
1.proguard简介
proguard 是一种为Java编译好的class文件进行混淆处理以防止其被反编译。
在Android 2.3以前,混淆Android代码只能手动添加proguard来实现代码混淆,非常不方便。而2.3以后,Google已经将这个工具加入到了SDK的工具集里。具体路径:SDK\tools\proguard。当创建一个新的Android工程时,在工程目录的根路径下,会出现一个proguard的配置文件proguard.cfg。不过新版本ADT生成的配置文件已经更名为proguard-project.txt,也就是说,我们可以通过简单的文本方式配置,就可以在我们的elipse工程中直接使用ProGuard混淆Android工程。
Android 代码混淆步骤:
1、首先,在工程描述文件 project.properties 中启用ProGuard(将前面的#去掉)。如下所示:
proguard.config=proguard-project.txt
2、根据自己项目需要对 proguard-project.txt 文件配置,当然完全可以用 Google 默认配置。
3、通过 Export 导出APK文件即为混淆后的文件。
2. proguadr文件编写规制
-dontwarn com.xx.bbb.**
-keep class com.xx.bbb.** { *;}
-dontnote java.**
-keep 字段代表的是其后面的类不被混淆
-downwarn 是代表不需要提示 警告
-downnote 是代表不需要提示 note
3. ProGuard 代码混淆后导出警告:can’t
find referenced class
这个时候就需要 -keep、-downwarn、-downnote字段了
4.Android代码当中一般不需要混淆的类
4.1对于第三方jar包,有可能该jar包已经混淆过了,所以就不需要混淆了
例如tencent 微博分享
4.2对于Android应用当中涉及到的Serialize 相关的class 也是不能被混淆的
4.3 还有一些特殊的类,这个Android默认的proguard已经填写好了
4.4 如果混淆打包还是报错的话,只需要保持com.xx.bbb.**这个包里面的所有类和所有方法而不混淆,接着还叫ProGuard不要警告找不到com.xx.bbb.**这个包里面的类的相关引用。
proguard 是一种为Java编译好的class文件进行混淆处理以防止其被反编译。
在Android 2.3以前,混淆Android代码只能手动添加proguard来实现代码混淆,非常不方便。而2.3以后,Google已经将这个工具加入到了SDK的工具集里。具体路径:SDK\tools\proguard。当创建一个新的Android工程时,在工程目录的根路径下,会出现一个proguard的配置文件proguard.cfg。不过新版本ADT生成的配置文件已经更名为proguard-project.txt,也就是说,我们可以通过简单的文本方式配置,就可以在我们的elipse工程中直接使用ProGuard混淆Android工程。
Android 代码混淆步骤:
1、首先,在工程描述文件 project.properties 中启用ProGuard(将前面的#去掉)。如下所示:
proguard.config=proguard-project.txt
2、根据自己项目需要对 proguard-project.txt 文件配置,当然完全可以用 Google 默认配置。
3、通过 Export 导出APK文件即为混淆后的文件。
2. proguadr文件编写规制
-dontwarn com.xx.bbb.**
-keep class com.xx.bbb.** { *;}
-dontnote java.**
-keep 字段代表的是其后面的类不被混淆
-downwarn 是代表不需要提示 警告
-downnote 是代表不需要提示 note
3. ProGuard 代码混淆后导出警告:can’t
find referenced class
这个时候就需要 -keep、-downwarn、-downnote字段了
4.Android代码当中一般不需要混淆的类
4.1对于第三方jar包,有可能该jar包已经混淆过了,所以就不需要混淆了
例如tencent 微博分享
4.2对于Android应用当中涉及到的Serialize 相关的class 也是不能被混淆的
4.3 还有一些特殊的类,这个Android默认的proguard已经填写好了
4.4 如果混淆打包还是报错的话,只需要保持com.xx.bbb.**这个包里面的所有类和所有方法而不混淆,接着还叫ProGuard不要警告找不到com.xx.bbb.**这个包里面的类的相关引用。
相关文章推荐
- 使用 Android 自带的 proguard 混淆源码
- 使用 Android 自带的 proguard 混淆源码
- 在android中使用proguard混淆代码出现“Conversion to Dalvik format failed with error 1”错误的解决方法
- [Android]使用ProGuard遇到“conversion to Dalvik format failed with error 1”错误的解决办法
- android 中 Proguard 使用(收藏)
- 在android中使用proguard混淆代码出现“Conversion to Dalvik format failed with error 1”错误的解决方法
- android工程创建的jar包使用proguard进行混淆
- [Android]使用ProGuard遇到“conversion to Dalvik format failed with error 1”错误的解决办法
- 使用 Android 自带的 proguard 混淆源码
- android工程创建的jar包使用proguard进行混淆
- android 中 Proguard 使用(收藏) .
- Android防止反编译:使用proguard时需要注意
- [Android]使用ProGuard遇到“conversion to Dalvik format failed with error 1”错误的解决办法
- 在android中使用proguard混淆代码出现“Conversion to Dalvik format failed with error 1”错误的解决方法
- 在android中使用proguard混淆代码出现“Conversion to Dalvik format failed with error 1”错误的解决方法
- 关于Android使用proguard进行代码混淆
- android 混淆器的使用 proguard.flags
- 使用ProGuard混淆Android工程 保护好自己的代码
- Android ProGuard压缩,优化,混淆使用
- 命令行编译android程序,欢迎探讨命令行如何使用proguard混淆优化代码