您的位置:首页 > 移动开发

混淆代码app打包

2014-03-13 19:18 274 查看
一般自己打包的jar包需要屏蔽混淆的代码:

-dontwarn com.nostra13.universalimageloader.**

这是需要防止需要被打包

-keep class com.nostra13.universalimageloader.** {*;}
-keep interface com.nostra13.universalimageloader.** {*;}
-keep public class * extends com.nostra13.universalimageloader.**

gson包屏蔽代码混淆时不能混淆相关的bean类不然会出现解析错误,无法解析
##---------------Begin: proguard configuration for Gson ----------
# Gson uses generic type information stored in a class file when working with fields. Proguard
# removes such information by default, so configure it to keep all of it.
-keepattributes Signature
# Gson specific classes
-keep class com.google.gson.stream.** { *; }
# Application classes that will be serialized/deserialized over Gson
-keep class com.pupuwang.ycyl.bean.** { *; }
-keep class com.pupuwang.ycyl.main.home.shops.model.** { *; }
-keep class com.pupuwang.ycyl.main.sale.model.** { *; }
-keep class com.pupuwang.ycyl.ordering.model.** { *; }
-keep class com.pupuwang.ycyl.main.feature.model.** { *; }

//这4句是不混淆第三方包中的指定内容,脚本中把这行注释去掉
-keep class com.ccit.** {*; }
-keep class ccit.** { *; }
-keep class com.aspire.**

-keep class mm.vending.**

还要配置 default.properties
把proguard.config = proguard.cfg 加上

-ignorewarnings 屏蔽warning警告日志,脚本中把这行注释去掉

Android导入第三方jar包,proguard混淆脚本(屏蔽警告,不混淆第三方包)
最近1个项目中 需要导入移动MM的第三方计费包,混淆时用到了如下脚本,可屏蔽警告,不混淆第三方包指定内容。
非常有效

proguard.cfg 文件

-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-ignorewarnings //这1句是屏蔽警告,脚本中把这行注释去掉
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
//这1句是导入第三方的类库,防止混淆时候读取包内容出错,脚本中把这行注释去掉

本文出自 “绝对领域” 博客,请务必保留此出处http://lyp634959848.blog.51cto.com/7750498/1376087
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: