頭疼的問題,json使用了google的gson三方包,可是混淆的時候出了問題
明明已經按照gson的官方文檔,把混淆腳本加上去了,卻還是出問題。
今天同事找到一篇博客,關於這個問題的:
我們是將json解析以后放到javabean中去的,但是一直出問題,放進去的字符串是對的,解析出來的javabean卻是空,節操碎一地
-keep class com.google.**{*;}
-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();
}
##---------------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.** { *; } ##這里需要改成解析到哪個 javabean
##---------------End: proguard configuration for Gson ----------
這些個是官方給的腳本,放進去那叫一蛋疼,坑爹
最后一篇博客9了我:http://blog.sina.com.cn/s/blog_4e1e357d0101ednf.html
大致是 倒數第二行 需要讓所有定義的javabean不被混淆,改過來之后就好了,十分感謝,希望朋友們也少走彎路
英文不好也是相當的坑爹呀,唉