Comment dire Proguard pour dissimuler les noms de classe

Je voudrais proguard pour dissimuler les noms de classe. J'ai cette ligne dans Proguard.cfg

-keepclasseswithmembers class * {
public static <fields>;
}

-keepnames class * implements java.io.Serializable
-keep public class com.google.**

Et je remarque que ce n'est pas occulté, c'est la classe des noms. Le fait d'exécuter les jdgui je vois
com/test/abcd/ActualClass.java
public class ActualClassName s'étend de l'Activité etc

de plus je vois les méthodes retournant réel les noms de classe. comme

 ActualClassname aa();

et les importations des états comme

 import com.abcd.ActualClassName

Comment puis-je obtenir Proguard pour obscurcir le nom de la classe elle-même. Pas seulement pour les Activités que je vois ce que mes Cartes ne sont pas être occulté. Eh bien, il est de la dissimulation de passe, mais pas les noms de classe.

Est les règles ci-dessus, ce qui empêche les noms de classe d'être obscurci?

Mise à jour: depuis, j'ai supprimé les règles ci-dessus et une classe Utilitaire qui ne s'étend pas quelque chose de Android n'est pas occulté. Je vais maintenant me demandais s'il existe une règle implicite sur le fait de garder les noms de classe des classes qui sont référencés dans les classes qui sont conservés comme Activité derivied classes? Les classes dont les noms ne sont pas camouflés ont quelques choses en commun:

1) méthodes Statiques
2) l'Importation d'autres types qui sont conservés comme ceux découlant de l'activité ou serializable.
3) Ils ont des méthodes avec des paramètres des autres classes (dont Certains pourraient avoir besoin d'être gardé).

Cependant, il n'est pas le cas que je suis demande spécifiquement que ces classes utilitaires doivent être conservés.

  • Je suis en cours d'exécution dans la même question. Avez-vous trouvé une solution à ce problème ?
InformationsquelleAutor Code Droid | 2012-05-08