2016-05-15 5 views
9

Wenn gefunden, dass die Benutzer, die alten Geräte verwenden (2.3.6) mir diese uncatched Ausnahme senden:java.lang.NoClassDefFoundError: ayc für InterstitialAd

java.lang.NoClassDefFoundError: ayc 
at ajb.a(:com.google.android.gms.DynamiteModulesA:20) 
at po.a(:com.google.android.gms.DynamiteModulesA:536) 
at po.a(:com.google.android.gms.DynamiteModulesA:144) 
at qn.a(:com.google.android.gms.DynamiteModulesA:150) 
at pm.a(:com.google.android.gms.DynamiteModulesA:312) 
at ul.onTransact(:com.google.android.gms.DynamiteModulesA:81) 
at android.os.Binder.transact(Binder.java:279) 
at com.google.android.gms.ads.internal.client.zzu$zza$zza.zzb(Unknown Source) 
at com.google.android.gms.ads.internal.client.zzac.zza(Unknown Source) 
at com.google.android.gms.ads.InterstitialAd.loadAd(Unknown Source) 
at my.app.q.g(ABase.java:196) 
at my.app.q.f(ABase.java:183) 
at my.app.q.onCreate(ABase.java:88) 
at my.app.AMain.onCreate(AMain.java:53) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1050) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1623) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1675) 
at android.app.ActivityThread.access$1500(ActivityThread.java:121) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:943) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:130) 
at android.app.ActivityThread.main(ActivityThread.java:3770) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:507) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:912) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:670) 
at dalvik.system.NativeStart.main(Native Method) 

Der Code auf Fehler ist dieses:

mInterstitialAd = new InterstitialAd(this); 
//... some defenitions 
AdRequest adRequest = new AdRequest.Builder().build(); 
mInterstitialAd.loadAd(adRequest);/// <<< THE ERROR APPEARS 

Ist es möglich, diesen Fehler zu beheben, ohne try- (fangen Ausnahme e) -finally?

+0

Können Sie Ihre 'Gradle' zeigen? –

+0

Sind Sie sicher, dass "GoogleAdMobAdsSdk-package" aktiviert ist? wie hier in [this] (http://stackoverflow.com/a/10632156/5067493) antworte. –

+0

@ShreeKrishna, ich benutze Eclipse. Dieser Code funktioniert in allen anderen Geräten sehr alt. Ich verwende aktuelle Google SDK-Bibliotheken. – Vyacheslav

Antwort

9

Dies ist ein SDK-Problem und nicht ein Fehler in Ihrem Code.

Die Veröffentlichung von Play-Diensten, die gerade eingeführt wurde, enthält einen Mobile Ads-Fehler, der Geräte betrifft, auf denen Gingerbread ausgeführt wird. Engineering ist sich dessen bewusst, es wurde ein Fix erstellt, der in der nächsten Version veröffentlicht wird.

+1

Wo finde ich Informationen dazu? – AppiDevo

+3

Ich habe hier einen Fehlerbericht erstellt: https://groups.google.com/forum/#!category-topic/google-admob-ads-sdk/android/_kYrMS5nVxE. Übrigens, es passiert mir und ich benutze normale Werbebanner (kein InterstitialAd) –

3

Dies ist, was ich in den bug report diese Frage gesagt wurde:

As you are probably aware, the cause of the crash was SDK-related. A fix is in the pipeline, and scheduled to go live in the next SDK release.

Und später:

The most recent release of Google Play services contains a bug affecting devices running Gingerbread. The SDK team has identified the problem and created a server-side workaround that should eliminate it. These crashes should tail off in the coming days, so you should expect to see fewer and fewer of them going forward.

Also, das über den Server festgelegt wird, und Sie werden wenige Berichte erhalten bis es 0% erreicht.

Wünschte, dass alle Bugs auf diese Weise behandelt wurden :)

Verwandte Themen