Disons que j'ai ..
public class SomeClass {
public interface someInterface {
public void firstMethod(String variable);
public void secondMethod(String variable);
public void thirdMethod();
}
}
et je fais..
-keep,includedescriptorclasses public class com.somepackage.SomeClass {
<fields>;
<methods>;
}
-keep public interface com.somepackage.someInterface {*;}
Je me retrouve avec
public interface someInterface {
public void a(String variable);
public void a(String variable);
public void a();
}
Comment puis-je m'assurer que les noms de méthode de cette interface ne sont pas obscurcis tout en masquant le reste de la classe?
ProGuard utilise la convention de dénomination du bytecode Java, comme indiqué dans les noms de fichiers de classe et les stacktraces. Donc:
-keep public interface com.somepackage.SomeClass$someInterface {*;}
J'ai essayé ce qui suit et cela a semblé fonctionner:
-keep interface com.somepackage.SomeClass$someInterface