У меня этот класс в моем ProGuard.Почему minifyEnabled показывает большую часть моего кода?
-keep,allowshrinking class com.MyClass {
public <methods>;
protected <methods>;
public static <methods>;
public <init>(...);
}
Когда я смотрю на AAR это показывает, как это:
public class MyClass implements a {
private static final MyClass a = new MyClass();
private a b = new b();
private MyClass() {
}
public static MyClass getInstance() {
return a;
}
public void doSomething(int var1, int var2) {
this.b.doSomething(var1, var2);
}
}
Если я иду в private a b = new b();
и делать Crtl + b
я могу прочитать код класса b
. Должен ли этот код быть запутанным? Как заставить его быть запутанным?
Это то, что показывает внутри класса b
, который должен быть запутан.
class b implements a {
b() {
}
public void doSomething(int var1, int var2) {
int var3 = var1 + var2;
}
}
Может быть, что 'android: debuggable =" true "' установлен в вашем файле манифеста? – qantik
что вы ожидали? Насколько мне известно, код класса по-прежнему доступен с помощью proguard. Что такое переименование всех переменных/классов/методов и удаление данных отладки, поэтому люди не могут отлаживать ваш код. Тем не менее, код есть. – Lxu