2016-09-07 2 views
0

Ich arbeite an der Aktualisierung meines UrbanAirship auf 7.2. Keine Kompilierungsfehler und die App läuft gut, bis sie eine Push-Nachricht erhält. An diesem Punkt, stürzt sie mit folgendem Stack-Trace:UrbanAirship App stürzt bei Empfang der Nachricht ab

UALib: ManifestUtils - Unable to find class: com.urbanairship.push.GCMPushReceiver java.lang.ClassNotFoundException: com.urbanairship.push.GCMPushReceiver at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:324) at java.lang.Class.forName(Class.java:285) at com.urbanairship.util.ManifestUtils.validateManifest(ManifestUtils.java:215) at com.urbanairship.UAirship.validateManifest(UAirship.java:736) at com.urbanairship.UAirship.executeTakeOff(UAirship.java:343) at com.urbanairship.UAirship.access$000(UAirship.java:42) at com.urbanairship.UAirship$2.run(UAirship.java:299) at java.lang.Thread.run(Thread.java:818) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.urbanairship.push.GCMPushReceiver" on path: DexPathList[[zip file "/data/app/com.xxx-1/base.apk"],nativeLibraryDirectories=[/data/app/com.xxx-1/lib/arm, /data/app/com.xxx-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) at java.lang.Class.classForName(Native Method)  at java.lang.Class.forName(Class.java:324)  at java.lang.Class.forName(Class.java:285)  at com.urbanairship.util.ManifestUtils.validateManifest(ManifestUtils.java:215)  at com.urbanairship.UAirship.validateManifest(UAirship.java:736)  at com.urbanairship.UAirship.executeTakeOff(UAirship.java:343)  at com.urbanairship.UAirship.access$000(UAirship.java:42)  at com.urbanairship.UAirship$2.run(UAirship.java:299)  at java.lang.Thread.run(Thread.java:818)  Suppressed: java.lang.ClassNotFoundException: com.urbanairship.push.GCMPushReceiver at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 10 more Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available

Wenn ich überprüfen, um zu sehen, ob die Klasse sichtbar ist (Cmd-O) und der Eingabe beginnen, die Klasse sofort kommt.

Hat jemand dies festgestellt? Ich habe keine Ahnung, wie ich das beheben kann. Vielen Dank.

enter image description here

+0

Können Sie Ihre AndroidManifest-Datei freigeben? Ich denke, Sie könnten den Empfänger in der Manifest-Datei –

+0

@android_Muncher vermissen, ist wahrscheinlich richtig. Stellen Sie sicher, dass es da drin ist. Und wenn es schon ist, versuchen Sie es mit einem sauberen Build, Android Studio tut manchmal unerklärliche Dinge ... – privatestaticint

Antwort

1

Wir umbenannt GCMPushReceiver zu GcmPushReceiver. Sie sollten alle Empfänger, Dienste und Aktivitäten von Urban Airship aus Ihrem Manifest entfernen und die automatische Manifest-Integration für Sie zusammenführen lassen.