it-swarm.com.de

Fehler vor dem Start aufgrund fehlender Methoden melden (in com.google.Android.apps.mtaas.crawler-1/base.apk)

Seit kurzem enthält meine App seltsame Fehlermeldungen in den Pre-Launch-Berichten (die nach dem Hochladen in den Play Store automatisch generiert werden).

Diese Berichte enthalten Ausnahmen wie die folgenden:

Exception Java.lang.NoSuchMethodError: No interface method a(Landroid/Arch/lifecycle/e;Landroid/Arch/lifecycle/b$a;)V in class Landroid/Arch/lifecycle/GenericLifecycleObserver; or its super classes (declaration of 'Android.Arch.lifecycle.GenericLifecycleObserver' appears in /data/app/com.google.Android.apps.mtaas.crawler-1/base.apk)
Android.Arch.lifecycle.f$a.a (f.Java:326)
Android.Arch.lifecycle.f.a (f.Java:159)
com.firebase.ui.database.FirebaseRecyclerAdapter.<init> (FirebaseRecyclerAdapter.Java:40)

Und:

Exception Java.lang.NoSuchMethodError: No static method a(Landroid/app/Activity;)V in class Landroid/Arch/lifecycle/ReportFragment; or its super classes (declaration of 'Android.Arch.lifecycle.ReportFragment' appears in /data/app/com.google.Android.apps.mtaas.crawler-1/base.apk)
Android.Arch.lifecycle.LifecycleDispatcher$DispatcherActivityCallback.onActivityCreated (LifecycleDispatcher.Java:77)
Android.app.Application.dispatchActivityCreated (Application.Java:219)
Android.app.Activity.onCreate (Activity.Java:1040)
Android.support.v4.app.SupportActivity.onCreate (SupportActivity.Java:66)
Android.support.v4.app.FragmentActivity.onCreate (FragmentActivity.Java:285)
Android.support.v7.app.AppCompatActivity.onCreate (AppCompatActivity.Java:84)

Und:

Caused by: Java.lang.NullPointerException: Attempt to invoke virtual method 'int Android.Arch.core.internal.SafeIterableMap.size()' on a null object reference
    at Android.Arch.lifecycle.LifecycleRegistry.getObserverCount(LifecycleRegistry.Java:204)
    at Android.Arch.lifecycle.ProcessLifecycleOwner.b(ProcessLifecycleOwner.Java:154)
    at Android.Arch.lifecycle.ProcessLifecycleOwner.a(ProcessLifecycleOwner.Java:100)
    at Android.Arch.lifecycle.LifecycleRuntimeTrojanProvider.onCreate(LifecycleRuntimeTrojanProvider.Java:36)
    at Android.content.ContentProvider.attachInfo(ContentProvider.Java:1751)
    at Android.content.ContentProvider.attachInfo(ContentProvider.Java:1726)
    at Android.app.ActivityThread.installProvider(ActivityThread.Java:6031)
    ... 10 more

Das Seltsame ist, dass meine veröffentlichte App auf realen Geräten einwandfrei zu funktionieren scheint (die Ausnahmen treten nur während der Tests vor dem Start auf).

Ich habe versucht, alle (Haupt-) Änderungen, die seit dem letzten Build durchgeführt wurden und bei denen ich kein Problem vor dem Start hatte, rückgängig zu machen: Von API 26 zurück zu API 27, ältere Version der Support-Bibliotheken, kein D8 usw., aber bisher kein Erfolg: Von den 9 Tests, die nur 1 oder 2 erfolgreich durchgeführt wurden, schlägt der Rest mit dieser Art von Fehlern fehl.

Was kann ich tun, um das zu lösen?

14
Peter

Ich habe gerade eine Antwort vom Google Play-Entwickler-Support erhalten. Sie untersuchen das Problem.

Um dieses Problem zu umgehen, können Sie zur vorherigen Version des Crawlers zurückkehren, indem Sie die neu veröffentlichte Version deaktivieren.

So können Sie sich abmelden:

  • Melden Sie sich bei Ihrer Play Console an.
  • Wählen Sie eine App aus.
  • Wählen Sie Release-Verwaltung> Pre-Launch-Bericht> Einstellungen. Bewegen Sie im Abschnitt "Berichtsversion vor dem Start" den Schalter "Deaktivieren" nach rechts, bis er blau wird.

Danach werden die Startberichte wieder korrekt angezeigt.

PS - Dadurch werden die von Google Play durchgeführten Standardtests deaktiviert, und Sie können andere Fehler aus anderen Gründen übersehen. Stellen Sie daher sicher, dass Sie Ihre eigenen Tests implementieren, bevor Sie die Produktion aufnehmen.

5
Peter

Der Gson-Fehler wurde durch eine Regression verursacht. Das Problem wurde behoben. Es sollte wie erwartet funktionieren, nachdem der Fix in ein oder zwei Tagen veröffentlicht wurde.

0
Saswat Anand