使用fastjson 注意事项,主要表现:
1.加了符号Annotation 的实体类,一使用就会奔溃
2.当有泛型属性时,一使用就奔溃
在调试的时候不会报错,当你要打包签名混淆包的时候,就会出现上述问题。
最后才发现混淆文件缺了以下两行代码导致的:
-keepattributes Singature //避免混淆泛型
-keepattributes *Annotation //不混淆注释
我使用的混淆:
#fastjson
-libraryjars libs/fastjson-1.1.46.android.jar -dontwarn com.alibaba.fastjson.**
-dontskipnonpubliclibraryclassmembers
-dontskipnonpubliclibraryclasses -keep class com.alibaba.fastjson.**{*;}
-keep class * implements java.io.Serializable { *; } -keepattributes *Annotation
-keepattributes Signature #如果有问题直接使用
-libraryjars libs/fastjson-1.1.46.android.jar -dontwarn com.alibaba.fastjson.** -keep class com.alibaba.fastjson.** { *; } -keepattributes Signature
最近碰到的问题,在晚上搜出来都是一样的,我把我的解决方案提供给大家、
希望能够帮助你们