# -------------------------------------# android 原始混淆模板# -------------------------------------# ----------------------------------# 通过指定数量的优化能执行# -optimizationpasses n# -----------------------------------optimizationpasses 5# ----------------------------------# 混淆时不会产生形形色色的类名 # -dontusemixedcaseclassnames# ----------------------------------#-dontusemixedcaseclassnames# ----------------------------------# 指定不去忽略非公共的库类# -dontskipnonpubliclibraryclasses# ----------------------------------#-dontskipnonpubliclibraryclasses# ----------------------------------# 不预校验# -dontpreverify# ----------------------------------# -dontpreverify# ----------------------------------# 输出生成信息# -verbose# -----------------------------------verbose# ----------------------------------# 优化选项# optimizations {optimization_filter} # -----------------------------------optimizations !code/simplification/arithmetic,!field/*,!class/merging/*-keep public class * extends android.app.Activity-keep public class * extends android.app.Application-keep public class * extends android.app.Service-keep public class * extends android.content.BroadcastReceiver-keep public class * extends android.content.ContentProvider-keep public class * extends android.app.backup.BackupAgentHelper-keep public class * extends android.preference.Preference-keep public class com.android.vending.licensing.ILicensingService-keepclasseswithmembernames class * { native <methods>;}# -----------------# modify 修改合并# ------------------keep public class * extends android.view.View { public <init>(android.content.Context); public <init>(android.content.Context, android.util.AttributeSet); public <init>(android.content.Context, android.util.AttributeSet, int); public void set*(...);}-keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String);}-keep class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator *;}#--------------------------# 保护类型 -keepattributes 说明# Exceptions, Signature, Deprecated, SourceFile, SourceDir, LineNumberTable, LocalVariableTable, # LocalVariableTypeTable, Synthetic, EnclosingMethod, RuntimeVisibleAnnotations, RuntimeInvisibleAnnotations, # RuntimeVisibleParameterAnnotations, RuntimeInvisibleParameterAnnotations, and AnnotationDefault# ---------------------keepattributes **-libraryjars <java.home>/lib/rt.jar# ----------------------# 不压缩指定的文件# -dontshrink# -----------------------dontshrink# ----------------------# 不优化指定的文件# -dontoptimize# ------------------------dontoptimize# -----------------------# 不混淆指定的文件# -dontobfuscate# -----------------------# ----- 混淆包路径 --------repackageclasses ''-flattenpackagehierarchy ''-target 1.6# -------- 以下是使用了 roboguice-1.1.2.jar 以及 guice-2.0-no_app.jar 功能需要保护的字段及类相关 ---------keep class com.google.inject.Binder-keepclassmembers class * { @com.google.inject.Inject <init>(...);}-keepclassmembers class * { void *(**On*Event); }-keepclassmembers class **.R$* { public static <fields>;}# ------ 编译时需要用到的 jar 包-libraryjars D:/dev_rc/android-sdk-windows/add-ons/addon_google_apis_google_inc_11/libs/maps.jar# ------ 保护 谷歌第三方 jar 包,界面特效 -----------keep class android.support.v4.**-dontwarn android.support.v4.**# ------ 保护百度地址jar包 ---------keep class com.baidu.mapapi.** { *; }-dontwarn com.baidu.mapapi.**# --- 打包时忽略以下类的警告 ---dontwarn com.classpackage.AA#-keepnames class * implements java.io.Serializable# ---------保护所有实体中的字段名称-----------keepclassmembers class * implements java.io.Serializable { <fields>;}# --------- 保护类中的所有方法名 -------------keepclassmembers class * { public <methods>;}
详细解决方案
Android应用了ProGuard时注意的事项【转载】
热度:35 发布时间:2016-05-01 20:41:19.0
相关解决方案
- android 读取byte[]中的元素解决方案
- android 标题栏兑现方式
- android 中Activity向BroadcastReceiver发送数据,该怎么解决
- Android 4.0 为什么模拟器老是提示小弟我谷歌拼音输入法已停止
- android:getSharedPreferences() 这是哪个类的方法解决思路
- android 怎么判断一个程序是否联网
- android 大量数据按周分组,该如何解决
- android RadioButton如何设置默认选中
- 着急的混淆class有关问题,请(Proguard)
- ksoap2-android-这个包,连接webService怎么设置超时
- android 怎么重新设置锚点
- android UI界面设计解决方案
- android 图片对象获取的有关问题
- android 怎么调用淘宝支付宝接口
- Android 沿袭InputMethodService自定义输入法
- android 关于服务连接的疑义
- android 两个activity如何通信
- android 怎么实现对view的放大和缩小
- android 教程解决方法
- android ID,该如何处理
- 准备复习2-3个月,看java+android,请问有经验者,怎么看效果最好》
- android UI线程与AsyncTask的有关问题
- android(java)中的java.net能不能和c#的system.net.sockets进行tcp通信,该如何解决
- android ListView 中的onItemClick Intent 没法跳转
- android(java) 中文乱码的有关问题
- c#c++,android,ios(iphone),php,java视屏课程 散分
- android Post文件到ASP.NET的有关问题,能收到参数收不到文件
- RIM 替 Android 开发者提供免费的 PlayBook!2月13日前
- android 动态设立控件高度
- Android test project 编译方法