1
我在我的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