Gson不反序列化从未使用过的字段

时间:2017-08-31 14:15:58

标签: android serialization gson unused-variables

现状
我有一个模型,其中类UserSettingModel有两个字段: long UserId 并且具有名为设置的类UserSettings(具有多个字段)的字段的一个示例。

警告:我的代码中没有直接使用这些字段(此字段的Android Studio颜色中的是灰色的),但我需要将其重新发送到服务器。

public class UserSettingsModel
{
    @SerializedName("UserId")
    public long UserId = -1L;

    @SerializedName("Settings")
    public UserSettings Settings;

}//end of class/ UserSettingsModel

class UserSettings
{
    @SerializedName("showRegion")
    public String showRegion = "";

    @SerializedName("showAddress")
    public String showAddress = "";
}

问题
如果在DEBUG模式下使用apk:GSON反序列化类 UserSettingModel 的所有字段,包括设置

如果在RELEASE模式下使用apk:字段设置 - 不反序列化

我的节目:

-keepattributes Signature
-keepattributes *Annotation*
-keep class sun.misc.Unsafe { *; }
-keep class com.google.gson.stream.** { *; }
-keep class com.google.gson.examples.android.model.** { *; }
-keep class com.google.gson.** { *; }
-keepclassmembers enum * { *; }
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer

我需要什么
如何在发布模式下使用GSON序列化/反序列化所有类的字段,也带有警告"字段从不使用"

0 个答案:

没有答案