proguard代码混淆并通过ant进行apk打包

1:写完ant打包脚本后,并从网上找了代码混淆的代码进行混淆打包时,发现打包成功后,用手机安装后并不能正常使用,找了一天,发现还是混淆代码的问题,于是根据编译的部分提示进行修改,主要我用了两个外部包,android-support-v4.jar和fastjson-1.1.34.android.jar,故根据对其进行不不混淆打包处理,然后再对android项目中用到的接口,抽象类,泛型都进行了不混淆处理,修改完后终于可以正常打包,配置如下,供大家参考,谢谢。


-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontskipnonpubliclibraryclassmembers
-dontskipnonpubliclibraryclasses
-dontpreverify
-ignorewarnings
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

#泛型的处理
-keepattributes Signature
-keepattributes *Annotation*

-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
-keep public class * extends android.widget.LinearLayout

##对用到的抽象类、接口都进行不混淆处理
-keep public class com.xyou.gamestrategy.bean.Data
-keep public class * extends android.os.AsyncTask
-keep public class * extends com.xyou.gamestrategy.activity.BaseActivity
-keep public class * implements com.xyou.gamestrategy.http.HttpStack
-keep public class * implements com.xyou.gamestrategy.task.BaseTask

-keep class com.xyou.gamestrategy.** { *; }

-keep interface com.xyou.gamestrategy.** { *; }

-keepclasseswithmembernames class * {
    native <methods>;
}

-keepclasseswithmembernames class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}

-keepclasseswithmembernames class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);
}

-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

-keep class * implements android.os.Parcelable {
  public static final android.os.Parcelable$Creator *;
}

#对android-support-v4.jar的不混淆处理
-libraryjars libs/android-support-v4.jar
-dontwarn android.support.v4.**
-keep class android.support.v4.app.** { *; }
-keep interface android.support.v4.app.** { *; }

-keep public class * extends android.support.v4.app.Fragment
-keep public class * extends android.support.v4.app.FragmentActivity


-keepclassmembers class * extends android.app.Activity {
               public void *(android.view.View);
}
-keep public class com.xyou.gamestrategy.R$*{
                public static final int *;
}

#fastjson的不混淆处理
-libraryjars libs/fastjson-1.1.34.android.jar
-dontwarn com.alibaba.fastjson.**
-keep class com.alibaba.fastjson.** {*;}
-keep class com.alibaba.fastjson.annotation.** {*;}
-keep class com.alibaba.fastjson.parser.** {*;}
-keep class com.alibaba.fastjson.parser.deserializer.** {*;}
-keep class com.alibaba.fastjson.serializer.** {*;}
-keep interface com.alibaba.fastjson.util.** {*;}

网上参考:

http://blog.csdn.net/chinavfeng/article/details/7287362

http://blog.csdn.net/ma969070578/article/details/9465439


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值