If you dont want your class members to be obfuscated then use SerializedName
annotation provided by Gson. For example:
public class ClassMultiPoints
{
@SerializedName("message")
public String message;
@SerializedName("data")
public List<ClassPoints> data;
...
}
Moreover, make sure you do add proper proguard configuration for Gson library too. For example:
##---------------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 ----------
For more info read this.