假设我有这些课程:
public class Superclass {
private int intValue;
}
public class Subclass extends Superclass {
private String stringValue;
}
ProGuard可能会将它们混淆为:
public class A {
private int a;
}
public class B extends A {
private String a;
}
我可以让B.a
成为其超类中不存在的另一个名称,例如B.b
?我的类将在序列化(JSON)中使用,存储在本地以便我不需要原始字段名称,只需要它们不同。
答案 0 :(得分:0)
据我所知,你应该保留序列化中使用的类。 Processing serializable classes建议你写一些类似的东西:
-keepclassmembers class * implements java.io.Serializable {
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}