【问题标题】:How to suppress 'Maybe this is program method' warnings from ProGuard如何抑制来自 ProGuard 的“也许这是程序方法”警告
【发布时间】:2011-08-29 11:03:28
【问题描述】:

我在我的 Android 应用程序中使用 ProGuard,并且在构建日志中运行时收到以下警告。我添加了适当的'-keep public class com.foo.OtherClass { public static *; }' 声明到我的 proguard.cfg 文件,但我仍然收到警告。我的应用程序运行良好,并且可以正确地动态访问该类。是否可以取消这些警告?

[proguard] Note: com.foo.MyClass accesses a method 'getInstance()' dynamically
[proguard]       Maybe this is program method 'com.foo.OtherClass { com.foo.OtherClass getInstance(); }'

【问题讨论】:

    标签: proguard


    【解决方案1】:

    您可以通过在配置中明确提及方法来避免它:

    -keep class com.foo.OtherClass { com.foo.OtherClass getInstance(); }
    

    或者,您可以隐藏课堂上的注释:

    -dontnote com.foo.MyClass
    

    【讨论】:

      【解决方案2】:

      您可以通过添加以下行来抑制所有 Note 类型的消息:

      -dontnote **
      

      【讨论】:

      • 即使这对我没有帮助
      • 别忘了**。起初这让我很受挫。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-20
      • 1970-01-01
      • 2013-07-11
      • 1970-01-01
      • 2021-07-08
      • 2020-04-04
      相关资源
      最近更新 更多