Proguard保持课堂成员

Tob*_*ias 9 serialization android json field proguard

我如何告诉proguard留下我的班级成员?

我需要它们以实现JSON兼容性......

这是我的班级:

package com.tools.app.holiday;

public class Holiday {  

    private String name;

    private Calendar dateFrom = Calendar.getInstance();

    private Calendar dateTo = Calendar.getInstance();

    ...
Run Code Online (Sandbox Code Playgroud)

我已经尝试了,但它不起作用......

-keepclassmembers class com.tools.app.holiday.Holiday 

-keepclassmembers class com.tools.app.holiday.Holiday *{
    private String name;    
    private Calendar dateFrom;
    private Calendar dateTo;
}
Run Code Online (Sandbox Code Playgroud)

我还实现了serialisable并做了:

-keepclassmembers class * implements java.io.Serializable {
Run Code Online (Sandbox Code Playgroud)

但这一切都没有保留我的会员名字.Proguard总是将at改为a,b,c :-(我错过了什么?

Eri*_*une 14

所有类名必须是完全限定的:

-keepclassmembers class com.tools.app.holiday.Holiday {
    private java.lang.String name;    
    private java.util.Calendar dateFrom;
    private java.util.Calendar dateTo;
}
Run Code Online (Sandbox Code Playgroud)

默认情况下,如果您忘记了这一点,ProGuard甚至会打印出消息.