com.google.gson.internal.StringMap cannot be cast XXX(整理)
問題の説明:
I am using Gson in my application and for that, i am using some classes with name as same as the one in using Json. My application works well, But while writing proguard, application crashes, I guess some of the classes are shrinking. my error is :
この兄弟たちが出会った問題は私が出会ったのと同じです.
混同しない場合は正常に動作し、混同した後に異常が報告されます(異常フォーマットは以下の通りです:)
質問への回答リンク:http://stackoverflow.com/questions/16563916/proguard-issue-while-using-gson
解決方法は次のとおりです.
You need to add these lines to your proguard so that gson class is kept while signing your app.
(つまり、以下の内容を混同ファイルに追加する)
これ以上運転を混同すれば正常です
I am using Gson in my application and for that, i am using some classes with name as same as the one in using Json. My application works well, But while writing proguard, application crashes, I guess some of the classes are shrinking. my error is :
java.lang.ClassCastException: com.google.gson.internal.StringMap cannot be cast to com.sample.package.GsonClass
この兄弟たちが出会った問題は私が出会ったのと同じです.
混同しない場合は正常に動作し、混同した後に異常が報告されます(異常フォーマットは以下の通りです:)
java.lang.ClassCastException: com.google.gson.internal.StringMap cannot be cast to XXX
質問への回答リンク:http://stackoverflow.com/questions/16563916/proguard-issue-while-using-gson
解決方法は次のとおりです.
You need to add these lines to your proguard so that gson class is kept while signing your app.
(つまり、以下の内容を混同ファイルに追加する)
##---------------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
# For using GSON @Expose annotation
-keepattributes *Annotation*
# 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 ----------
(このコードはhttps://code.google.com/p/google-gson/source/browse/trunk/examples/android-proguard-example/proguard.cfg) これ以上運転を混同すれば正常です