Proguard держать классников - PullRequest
       9

Proguard держать классников

9 голосов
/ 07 декабря 2011

Как я могу сказать proguard оставить моих учеников?

Они нужны мне для совместимости с JSON ...

Это мой класс:

package com.tools.app.holiday;

public class Holiday {  

    private String name;

    private Calendar dateFrom = Calendar.getInstance();

    private Calendar dateTo = Calendar.getInstance();

    ...

Я ужепробовал, но это не работает ...

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

-keepclassmembers class com.tools.app.holiday.Holiday *{
    private String name;    
    private Calendar dateFrom;
    private Calendar dateTo;
}

Я также реализовал serialisable и сделал:

-keepclassmembers class * implements java.io.Serializable {

Но все это не сохраняет мои имена членов.Proguard всегда меняет ist на a, b, c :-( Чего мне не хватает?

1 Ответ

14 голосов
/ 08 декабря 2011

Все имена классов должны быть полностью определены:

-keepclassmembers class com.tools.app.holiday.Holiday {
    private java.lang.String name;    
    private java.util.Calendar dateFrom;
    private java.util.Calendar dateTo;
}

По умолчанию ProGuard даже распечатывает сообщения, если вы забыли это.

...