簡體   English   中英

在 android proguard 中保留特定的內部 class

[英]keep specific inner class in android proguard

使用 proguard 時,如何在 android 中保留內部 class。

我有一個 class

class A{
  public void setXX(B b){}
  public interface B{ }
}

當我在 android 中使用 prouard 時,它會變成

class A{
  public void setXX(A$B b){}
}

B 也會變成 A$B,我怎樣才能讓它和public void setXX(B b){}一樣

在proguard文件中,我設置如下:

-keep class A$* {
    *;
}
-keep class A$B {
    *;
}

當我使用-keepattributes InnerClasses時,它起作用了,但它會保留所有內部類,我怎樣才能只保留特定的內部 class?

嘗試這個

使用@Keep注解

 @Keep
    class A{       
        //inner class
        @Keep
        class B{
        }
    }  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM