Chciałbym, aby program wyświetlał nazwy klas. Mam tę linię w Proguard.cfgJak powiedzieć Proguardowi, by zaciemnił nazwy klas?
-keepclasseswithmembers class * {
public static <fields>;
}
-keepnames class * implements java.io.Serializable
-keep public class com.google.**
I zauważam, że to, co nie jest zaciemniane, to nazwy klas. Tak działa jdgui widzę com/test/abcd/ActualClass.java public class ActualClassName rozciąga aktywny itp
ponadto widzę metody powrocie prawdziwych classnames. jak
ActualClassname aa();
i importuje stwierdzenia typu
import com.abcd.ActualClassName
Jak uzyskać Proguard do zaciemniać samej classname. Nie tylko dla działań, które widzę, moje Adaptery nie są zaciemniane. Cóż, dzieje się zaciemnianie, ale nie nazwy klas.
Czy powyższych zasad, co zapobiega nazwy klasy z czym ukrywane?
Aktualizacja: I od tego czasu usunięto reguły powyżej klasy narzędzie, które nie rozciąga się coś z Androidem nie jest ukrywane. Zastanawiam się teraz, czy istnieje jakaś niejawna reguła dotycząca utrzymywania nazw klas klas, które są przywoływane z klas, które są utrzymywane w taki sam sposób, jak klasy pochodne Activity? Klasy, których nazwy nie są zamazywane, mają kilka wspólnych cech:
1) Metody statyczne 2) Import innych typów, które są utrzymywane, jak te, które pochodzą z działalności lub można serializować. 3) Posiadają metody z parametrami innych klas (niektóre z nich mogą wymagać zachowania).
Jednak nie ma gdzie, że jestem specjalnie prośbą o tych klas użytkowych powinny być przechowywane.
Używam do tego samego problemu. Czy znalazłeś rozwiązanie tego problemu? – lnreddy