android 混淆 gson
很多种做法
我的做法是:
项目中有,proguard.cfg和project.properties文件
在project.properties文件中加入一句,proguard.config=proguard.cfg
意思为混淆规则指向proguard.cfg这个文件,然后再这个文件下添加一些规则
对于第三方的jar文件
例:
-libraryjars libs/android-support-v4.jar
## support-v4
-dontwarn android.support.v4.**
-keep class android.support.v4.** { *; }
其他的jar包类似操作,
GSon的处理:
## gson
-dontwarn com.google.gson.**
-keep class sun.misc.Unsafe { *; }
-keep class com.google.gson.** { *; }
-keep class com.google.gson.JsonObject { *; }
-keep class com.google.gson.examples.android.model.** { *; }
要加入这一句
-keepattributes Signature
我是用gson解析的所以相对应的数据类的属性名字就不能混淆了
我是implements Serializable
然后再添加:
-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}
-keep public class * implements java.io.Serializable {*;}
一些用到JNI的类也不能混淆,
更多相关文章
- HAL层,.sensors.h 头文件分析
- framework
- Android(安卓)Studio与Eclipse SDK无法更新解决方案
- Android学习--《数据的保存》
- apk反编译和再编译
- Android--打包工具,100个渠道包只需要10秒钟
- Android(安卓)面试之常用开源库
- Android仿微信图片选择器(二)
- Cordova 3.x 源码分析(7) -- CordovaLib概要