My Rest API以Json字符串格式返回以下对象的实例:
i = str(datetime.datetime.now())
我的Android应用尝试使用以下代码反序列化此结果:
public class ObjectWithList implements Serializable {
private long id;
private String name;
private List<String> contacts;
}
在debug apk中,ObjectMapper能够成功地将JSON字符串反序列化为此对象实例,并且列表数据完好无损。但是,在签名的apk中,返回的对象包含空列表。即使名称为空。 ObjectMapper没有例外。为什么这不起作用? 返回没有任何列表的任何其他对象的其他API将被反序列化而没有任何问题。为什么包含列表的对象不起作用?
我查了很多SO帖子,但找不到任何输入来解决这个问题。 非常感谢任何提示/指示。
此致 Shobhana
答案 0 :(得分:0)
在debug apk中,ObjectMapper能够成功地将JSON字符串反序列化为此对象实例,并且列表数据完好无损。但是,在签名的apk中,返回的对象包含空列表
我怀疑您正在使用ProGuard,默认情况下,它已针对调试版本禁用。您可以通过在minifyEnabled false
中设置build.gradle
或从ProGuard中排除某些类来为已签名的帐户停用它。