Android Runtime NoSuchMethodError

问题描述 投票:1回答:1

我最近在我的应用程序运行时在某些情况下开始收到此错误...

我已经尝试过以下方法:

  1. 添加proguard规则以包含com.google.common
  2. Mutlidex规则使所有类都打包在主dex文件中
  3. 我检查了apk内容,以确保类在dex文件中存在...
  4. 将我的guava android lib升级到最新的27.0.0-android
  5. 将gradle插件和gradle版本更新到最新版本

AndroidRuntime:java.lang.NoSuchMethodError:没有静态方法checkArgument(ZLjava / lang / String; I)V类Lcom / google / common / base / Preconditions;或其超级类('com.google.common.base.Preconditions'的声明出现在/data/app/com.myapp.dev.test-Xip2SNDMljPc2_BN0p3iRg==/base.apk!classes2.dex)03-26 13: 49:19.167 14658 14751 E AndroidRuntime:at com.google.common.util.concurrent.RateLimiter.checkPermits(RateLimiter.java:424)03-26 13:49:19.167 14658 14751 E AndroidRuntime:at com.google.common.util .concurrent.RateLimiter.tryAcquire(RateLimiter.java:341)03-26 13:49:19.167 14658 14751 E AndroidRuntime:at com.google.common.util.concurrent.RateLimiter.tryAcquire(RateLimiter.java:325)

不知道现在从哪里开始。任何想法我还能做什么?

android android-gradle android-proguard android-multidex android-guava
1个回答
0
投票

尝试添加以下proguard配置

-keep class com.google.common.base.**
© www.soinside.com 2019 - 2024. All rights reserved.