zoukankan      html  css  js  c++  java
  • android proguard 保留内部类

    今天在使用Proguard keep一个 静态内部类的时候,混淆完之后一直找不到那个静态内部类,内心抓狂啊。

    最后在stackoverflow上找到了答案:

    -keepattributes Exceptions,InnerClasses,...
    -keep class [packagename].A{
        *;
    }
    -keep class [packagename].A$* {
        *;
    }

    其中 A$* 表示所有A的内部类都保留下来,也可以如下使用:

    -keepattributes Exceptions,InnerClasses,...
    -keep class com.xxx.A{ *; }
    -keep class com.xxx.A$B { *; }
    -keep class com.xxx.A$C { *; }

    这样可以根据需要只保留A的某一个内部类

    以下是proguard文件一部分

    #-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod
    -keepattributes Exceptions,InnerClasses,...
    -keep class com.yulore.reverselookup.api.YuloreWindowConfiguration{ *; }
    -keep class com.yulore.reverselookup.api.YuloreWindowConfiguration$Builder{ *; }

    注意:第一行和第二行都可以解决问题

  • 相关阅读:
    servlet中如何实现通过Spring实现对象的注入
    异步Socket
    JAVA NIO实现
    【Java并发】
    JAVA实现阻塞队列
    lock与synchronized比较
    线程执行顺序
    ConcurrentHashMap 1.8
    LeetCode 416 分割等和子集
    linux常用指令
  • 原文地址:https://www.cnblogs.com/yongdaimi/p/6695113.html
Copyright © 2011-2022 走看看