Java GSON未正确反序列化对象

Java GSON未正确反序列化对象,java,serialization,gson,Java,Serialization,Gson,我有一个简单的对象,我正在和iOS设备上序列化,发送到Android设备,并在Android设备上反序列化。该对象有3个字段:一个枚举和2个整数。以下是iOS设备上对象的序列化形式: data = {"mTurnTimer":60,"mCreoCount":1,"mStage":"DRY_GRASS"} 我在Android设备上也看到了上面的字符串,但是当我调用 serializedOptions = json.fromJson(data, BattleOptions.class) 然后打印

我有一个简单的对象,我正在和iOS设备上序列化,发送到Android设备,并在Android设备上反序列化。该对象有3个字段:一个枚举和2个整数。以下是iOS设备上对象的序列化形式:

data = {"mTurnTimer":60,"mCreoCount":1,"mStage":"DRY_GRASS"}
我在Android设备上也看到了上面的字符串,但是当我调用

serializedOptions = json.fromJson(data, BattleOptions.class)
然后打印出字段,我看到构造函数中设置的默认值。我还继续序列化了反序列化对象,只是为了查看输出,这就是我看到的:

json.toJson(serializedOptions)) -> {"bvu":"OCEAN","bvv":3,"bvw":120}

这对我来说没有任何意义,因为接收的字符串结构正确,但输出不正确。关于如何纠正这个问题有什么建议吗

你能提供
BattleOptions
类的代码吗?经过进一步挖掘,结果发现Android上的proguard混淆了BattleOptions类。我在proguard选项中添加了一个例外,现在一切似乎都正常了。