转自:http://blog.youkuaiyun.com/s278777851/article/details/8956108
准备:新建的android 项目里面会有project.properties 和 proguard-project文件, 若找不到就去其他项目复制
步骤:
1. 在sdk的目录${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt, 找到 proguard-android.txt 和 proguard-project.txt两个文件, 复制到项目根目录。
2.修改 project.properties文件,在尾部添加 proguard.config=proguard-project.txt:proguard-android-optimize.txt
3. 导出带签名的apk包即可。
注:1.如项目有使用gson 包,需修改proguard-android.txt 文件, 在尾部添加
- ##---------------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 sun.misc.Unsafe { *; }
- #-keep class com.google.gson.stream.** { *; }
-
-
- # Application classes that will be serialized/deserialized over Gson
- -keep class com.google.gson.examples.android.model.** { *; }
- ##---------------End: proguard configuration for Gson ----------
2. 如有hashmap或arraylist 和自定义bean的使用,hashmap或 arrayList 莫名其妙长度为0,修改proguard-android.txt文件,使其不编译改bean类,如下
- -keep public class com.xxx.util.model.AppInfo {
- *;
- }