com.google.android.gms.ads.internal.util.aq.a中出现NoClassDefFoundError怪异错误

时间:2018-12-15 14:49:57

标签: java android

我在Google控制台上收到了一个奇怪的崩溃报告,该报告似乎与google广告模块有关。 这是在Google控制台上报告的堆栈跟踪。

java.lang.NoClassDefFoundError: 
  at jp.b (com.google.android.gms.dynamite_adsdynamite@14799081@14.7.99 (100400-223214910):3)
  at jo.a (com.google.android.gms.dynamite_adsdynamite@14799081@14.7.99 (100400-223214910):3)
  at jq.a (com.google.android.gms.dynamite_adsdynamite@14799081@14.7.99 (100400-223214910):19)
  at com.google.android.gms.ads.internal.util.aq.a (com.google.android.gms.dynamite_adsdynamite@14799081@14.7.99 (100400-223214910):15)
  at iu.a (com.google.android.gms.dynamite_adsdynamite@14799081@14.7.99 (100400-223214910):19)
  at iu.run (com.google.android.gms.dynamite_adsdynamite@14799081@14.7.99 (100400-223214910):8)
Caused by: java.lang.ClassNotFoundException: 
  at dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.java:134)
  at java.lang.ClassLoader.loadClass (ClassLoader.java:379)
  at ad.loadClass (com.google.android.gms.dynamite_dynamiteloader@14799081@14.7.99 (100400-223214910):4)
  at java.lang.ClassLoader.loadClass (ClassLoader.java:312)

此异常似乎仅在Android 9设备上发生。而且我不知道为什么会发生这种情况。

我只是想知道根据Android 9是否有与此广告模块相关的任何更新。

1 个答案:

答案 0 :(得分:6)

尝试将目标API更改为27,或者:

指定对Apache HTTP Legacy库的要求 如果您的应用定位到API级别28(Android 9.0)或更高版本,则必须在AndroidManifest.xml的元素中包含以下声明。

  <uses-library
      android:name="org.apache.http.legacy"
      android:required="false" />

来源:

https://groups.google.com/forum/#!topic/google-admob-ads-sdk/K1HKru7RutY

https://developers.google.com/maps/documentation/android-sdk/config#specify_requirement_for_apache_http_legacy_library