如何在运行时使用Proguard保留字段的注释

时间:2019-05-14 16:19:02

标签: java android proguard android-proguard

我正在使用Android应用程序。在我尝试使用Proguard混淆代码之前,该应用程序就像一个魅力一样。

import com.mobsandgeeks.saripaar.annotation.NotEmpty;

public class TaccuinoFragment extends Fragment {

    private TaccuinoViewModel mViewModel;

    @NotEmpty(messageResId = R.string.error_campo_obbligatorio)
    TextInputLayout titoloLayout;

}

gradle配置:

release {
  signingConfig signingConfigs.config
  zipAlignEnabled true
  minifyEnabled true
  proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), System.getenv("GRADLE_PROGUARD_CONFIG_FILE"), 'proguard-rules.pro'
}

我尝试了以下Proguard的配置:

-keepclasseswithmembernames class * {  @com.mobsandgeeks.saripaar.annotation.** <fields>;}

如何在运行时保留NotEmpty批注?预先谢谢你。

1 个答案:

答案 0 :(得分:2)

使用:

-keepattributes *Annotation*