Android Proguard模糊处理删除类型

Android Proguard模糊处理删除类型,android,serialization,obfuscation,proguard,simple-framework,Android,Serialization,Obfuscation,Proguard,Simple Framework,在使用模糊处理运行Proguard后,出现以下错误: Could not find type for field 'significantEvents' private java.util.HashMap com.fsr.tracker.PersistedState.significantEvents at index 1 以下代码中出现此错误,我使用simpleXML序列化程序序列化对象(persistedState): 在PersistedState类中,有一个HashMap定义如下: p

在使用模糊处理运行Proguard后,出现以下错误:

Could not find type for field 'significantEvents' private java.util.HashMap com.fsr.tracker.PersistedState.significantEvents at index 1
以下代码中出现此错误,我使用simpleXML序列化程序序列化对象(
persistedState
):

在PersistedState类中,有一个HashMap定义如下:

private HashMap<String, SignificantEvent> significantEvents = new HashMap<String, SignificantEvent>();
private HashMap signifintevents=new HashMap();
这个错误似乎表明HashMap中第二个字段的类型(
signifintevent
)没有找到,但我非常小心,在进行预防时不要混淆signifintevent类,映射输出显然表明所有必需的类和方法都存在,但是当我禁用模糊处理时,没有错误


有人知道如何配置Proguard以防止此错误吗?我现在完全不知所措,所以这里的任何指针都会有很大的帮助:)

事实证明有一个简单的解决方案。我必须在proguard.cfg中添加以下行:

-keepattributes签名


中提琴!它是干净的。

您是否在progaurd.cfg文件中保留了类和类成员的
重要事件
类?我是,但这不是问题所在,因为我在发布此问题后不久发现。。。(见下面我的答案)
private HashMap<String, SignificantEvent> significantEvents = new HashMap<String, SignificantEvent>();