Java Firebase云通知导致应用程序崩溃

Java Firebase云通知导致应用程序崩溃,java,android,firebase,firebase-cloud-messaging,Java,Android,Firebase,Firebase Cloud Messaging,我的安卓经验有限,并且有一个非常基本的疑问。我的设想如下: 2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: tf = true 2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: Coming here to check it 2019-11-26 14:32:21.626 16781-16781/com

我的安卓经验有限,并且有一个非常基本的疑问。我的设想如下:


2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: tf = true
2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: Coming here to check it
2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: 128.237.116.38
2019-11-26 14:32:21.626 16781-16781/com.example.blockchain E/TAG: try
2019-11-26 14:32:21.627 16781-16781/com.example.blockchain I/System.out: {"to":"\/topics\/blockchain","data":{"title":"BlockchainCopy","message":"test_message"}}
2019-11-26 14:32:21.627 16781-16781/com.example.blockchain E/TAG: sendNotification
2019-11-26 14:32:21.651 16781-16781/com.example.blockchain I/Choreographer: Skipped 78 frames!  The application may be doing too much work on its main thread.
2019-11-26 14:32:21.667 16781-16796/com.example.blockchain D/DecorView: onWindowFocusChangedFromViewRoot hasFocus: true, DecorView@4fbf77c[SecondActivity]
2019-11-26 14:32:21.674 16781-16827/com.example.blockchain E/libc: Access denied finding property "vendor.debug.egl.changepixelformat"
2019-11-26 14:32:21.668 16781-16781/com.example.blockchain W/RenderThread: type=1400 audit(0.0:3682787): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=22634 scontext=u:r:untrusted_app:s0:c250,c256,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
2019-11-26 14:32:21.677 16781-16781/com.example.blockchain D/OnePlusJankManager:  Chor uploadMDM JANK_TYPE_ONCE mViewTitle = com.example.blockchain/com.example.blockchain.barcode.BarcodeCaptureActivity--- jank level = 3
2019-11-26 14:32:21.678 16781-16781/com.example.blockchain W/RenderThread: type=1400 audit(0.0:3682788): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=22634 scontext=u:r:untrusted_app:s0:c250,c256,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
2019-11-26 14:32:21.687 16781-16827/com.example.blockchain E/libc: Access denied finding property "vendor.debug.egl.swapinterval"
2019-11-26 14:32:22.143 16781-16781/com.example.blockchain I/TAG: onResponse: {"message_id":810991634534636509}
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai: Rejecting re-init on previously-failed class java.lang.Class<com.google.firebase.iid.FirebaseInstanceIdReceiver>: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.VMClassLoader.findLoadedClass(java.lang.ClassLoader, java.lang.String) (VMClassLoader.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.findLoadedClass(java.lang.String) (ClassLoader.java:738)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:363)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver android.app.AppComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (AppComponentFactory.java:84)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver androidx.core.app.CoreComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (:60)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.handleReceiver(android.app.ActivityThread$ReceiverData) (ActivityThread.java:3492)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.access$1400(android.app.ActivityThread, android.app.ActivityThread$ReceiverData) (ActivityThread.java:207)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1769)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Looper.loop() (Looper.java:193)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6898)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:537)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:858)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai: Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:134)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.VMClassLoader.findLoadedClass(java.lang.ClassLoader, java.lang.String) (VMClassLoader.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.findLoadedClass(java.lang.String) (ClassLoader.java:738)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:363)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver android.app.AppComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (AppComponentFactory.java:84)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver androidx.core.app.CoreComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (:60)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.handleReceiver(android.app.ActivityThread$ReceiverData) (ActivityThread.java:3492)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.access$1400(android.app.ActivityThread, android.app.ActivityThread$ReceiverData) (ActivityThread.java:207)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1769)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Looper.loop() (Looper.java:193)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6898)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:537)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:858)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain D/AndroidRuntime: Shutting down VM
2019-11-26 14:32:22.146 16781-16781/com.example.blockchain E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.blockchain, PID: 16781
    java.lang.RuntimeException: Unable to instantiate receiver com.google.firebase.iid.FirebaseInstanceIdReceiver: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3499)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6898)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at android.app.AppComponentFactory.instantiateReceiver(AppComponentFactory.java:84)
        at androidx.core.app.CoreComponentFactory.instantiateReceiver(:60)
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3492)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6898) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
        Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
        at java.lang.VMClassLoader.findLoadedClass(Native Method)
        at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
                ... 12 more
     Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                ... 15 more
2019-11-26 14:32:22.147 16781-16781/com.example.blockchain E/UncaughtException: java.lang.RuntimeException: Unable to instantiate receiver com.google.firebase.iid.FirebaseInstanceIdReceiver: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3499)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6898)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at android.app.AppComponentFactory.instantiateReceiver(AppComponentFactory.java:84)
        at androidx.core.app.CoreComponentFactory.instantiateReceiver(:60)
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3492)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6898) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
        Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
        at java.lang.VMClassLoader.findLoadedClass(Native Method)
        at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
                ... 12 more
     Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                ... 15 more

     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]

我目前有两个应用程序,一个是二维码扫描仪,另一个显示二维码。这些将在多个设备上运行。发生的通信步骤如下所示:


2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: tf = true
2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: Coming here to check it
2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: 128.237.116.38
2019-11-26 14:32:21.626 16781-16781/com.example.blockchain E/TAG: try
2019-11-26 14:32:21.627 16781-16781/com.example.blockchain I/System.out: {"to":"\/topics\/blockchain","data":{"title":"BlockchainCopy","message":"test_message"}}
2019-11-26 14:32:21.627 16781-16781/com.example.blockchain E/TAG: sendNotification
2019-11-26 14:32:21.651 16781-16781/com.example.blockchain I/Choreographer: Skipped 78 frames!  The application may be doing too much work on its main thread.
2019-11-26 14:32:21.667 16781-16796/com.example.blockchain D/DecorView: onWindowFocusChangedFromViewRoot hasFocus: true, DecorView@4fbf77c[SecondActivity]
2019-11-26 14:32:21.674 16781-16827/com.example.blockchain E/libc: Access denied finding property "vendor.debug.egl.changepixelformat"
2019-11-26 14:32:21.668 16781-16781/com.example.blockchain W/RenderThread: type=1400 audit(0.0:3682787): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=22634 scontext=u:r:untrusted_app:s0:c250,c256,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
2019-11-26 14:32:21.677 16781-16781/com.example.blockchain D/OnePlusJankManager:  Chor uploadMDM JANK_TYPE_ONCE mViewTitle = com.example.blockchain/com.example.blockchain.barcode.BarcodeCaptureActivity--- jank level = 3
2019-11-26 14:32:21.678 16781-16781/com.example.blockchain W/RenderThread: type=1400 audit(0.0:3682788): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=22634 scontext=u:r:untrusted_app:s0:c250,c256,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
2019-11-26 14:32:21.687 16781-16827/com.example.blockchain E/libc: Access denied finding property "vendor.debug.egl.swapinterval"
2019-11-26 14:32:22.143 16781-16781/com.example.blockchain I/TAG: onResponse: {"message_id":810991634534636509}
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai: Rejecting re-init on previously-failed class java.lang.Class<com.google.firebase.iid.FirebaseInstanceIdReceiver>: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.VMClassLoader.findLoadedClass(java.lang.ClassLoader, java.lang.String) (VMClassLoader.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.findLoadedClass(java.lang.String) (ClassLoader.java:738)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:363)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver android.app.AppComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (AppComponentFactory.java:84)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver androidx.core.app.CoreComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (:60)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.handleReceiver(android.app.ActivityThread$ReceiverData) (ActivityThread.java:3492)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.access$1400(android.app.ActivityThread, android.app.ActivityThread$ReceiverData) (ActivityThread.java:207)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1769)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Looper.loop() (Looper.java:193)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6898)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:537)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:858)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai: Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:134)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.VMClassLoader.findLoadedClass(java.lang.ClassLoader, java.lang.String) (VMClassLoader.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.findLoadedClass(java.lang.String) (ClassLoader.java:738)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:363)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver android.app.AppComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (AppComponentFactory.java:84)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver androidx.core.app.CoreComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (:60)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.handleReceiver(android.app.ActivityThread$ReceiverData) (ActivityThread.java:3492)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.access$1400(android.app.ActivityThread, android.app.ActivityThread$ReceiverData) (ActivityThread.java:207)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1769)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Looper.loop() (Looper.java:193)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6898)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:537)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:858)
2019-11-26 14:32:22.145 16781-16781/com.example.blockchain D/AndroidRuntime: Shutting down VM
2019-11-26 14:32:22.146 16781-16781/com.example.blockchain E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.blockchain, PID: 16781
    java.lang.RuntimeException: Unable to instantiate receiver com.google.firebase.iid.FirebaseInstanceIdReceiver: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3499)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6898)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at android.app.AppComponentFactory.instantiateReceiver(AppComponentFactory.java:84)
        at androidx.core.app.CoreComponentFactory.instantiateReceiver(:60)
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3492)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6898) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
        Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
        at java.lang.VMClassLoader.findLoadedClass(Native Method)
        at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
                ... 12 more
     Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                ... 15 more
2019-11-26 14:32:22.147 16781-16781/com.example.blockchain E/UncaughtException: java.lang.RuntimeException: Unable to instantiate receiver com.google.firebase.iid.FirebaseInstanceIdReceiver: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3499)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6898)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at android.app.AppComponentFactory.instantiateReceiver(AppComponentFactory.java:84)
        at androidx.core.app.CoreComponentFactory.instantiateReceiver(:60)
        at android.app.ActivityThread.handleReceiver(ActivityThread.java:3492)
        at android.app.ActivityThread.access$1400(ActivityThread.java:207) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6898) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
        Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
        at java.lang.VMClassLoader.findLoadedClass(Native Method)
        at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
                ... 12 more
     Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                ... 15 more

     Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]

先前设置:

firebase数据库包含用于生成二维码的字符串。 设备2从Firebase数据库读取代码,并将其显示在屏幕上(第二个应用程序)

设备通信:

  • 设备1显示扫描仪应用程序,设备2显示二维码 在屏幕上
  • 设备1现在扫描设备2和设备2的二维码 通过某种逻辑验证QR码是否有效
  • 如果二维码有效,则会发生以下情况:

  • 设备1计算一个新的二维码并将其放入Firebase数据库

  • 设备2现在应该从显示二维码转移到另一个活动,该活动具有扫描其他设备二维码并验证其是否正确的逻辑

  • 从设备3开始,必须在Firebase数据库上显示新的QR码,现在设备1和2可以扫描该QR码

  • 注意:用户界面上的二维码更新必须持续进行,直到出现某种指示使设备进入二维码扫描阶段

    正在工作的事情:

  • 应用程序的两项活动(二维码显示和二维码扫描)独立工作
  • Firebase数据库更新时,用户界面上的二维码会更新
  • 不起作用的事情:

  • 一旦二维码被视为有效,则从二维码显示移动到扫描
  • 我尝试过的事情: 我基本上尝试过使用Firebase云消息实现设备到设备的通信。然而,一旦设备1认为QR码有效,它就会发送推送通知,然后崩溃。堆栈跟踪如下所示:

    
    2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: tf = true
    2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: Coming here to check it
    2019-11-26 14:32:21.626 16781-16781/com.example.blockchain I/System.out: 128.237.116.38
    2019-11-26 14:32:21.626 16781-16781/com.example.blockchain E/TAG: try
    2019-11-26 14:32:21.627 16781-16781/com.example.blockchain I/System.out: {"to":"\/topics\/blockchain","data":{"title":"BlockchainCopy","message":"test_message"}}
    2019-11-26 14:32:21.627 16781-16781/com.example.blockchain E/TAG: sendNotification
    2019-11-26 14:32:21.651 16781-16781/com.example.blockchain I/Choreographer: Skipped 78 frames!  The application may be doing too much work on its main thread.
    2019-11-26 14:32:21.667 16781-16796/com.example.blockchain D/DecorView: onWindowFocusChangedFromViewRoot hasFocus: true, DecorView@4fbf77c[SecondActivity]
    2019-11-26 14:32:21.674 16781-16827/com.example.blockchain E/libc: Access denied finding property "vendor.debug.egl.changepixelformat"
    2019-11-26 14:32:21.668 16781-16781/com.example.blockchain W/RenderThread: type=1400 audit(0.0:3682787): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=22634 scontext=u:r:untrusted_app:s0:c250,c256,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
    2019-11-26 14:32:21.677 16781-16781/com.example.blockchain D/OnePlusJankManager:  Chor uploadMDM JANK_TYPE_ONCE mViewTitle = com.example.blockchain/com.example.blockchain.barcode.BarcodeCaptureActivity--- jank level = 3
    2019-11-26 14:32:21.678 16781-16781/com.example.blockchain W/RenderThread: type=1400 audit(0.0:3682788): avc: denied { read } for name="u:object_r:vendor_default_prop:s0" dev="tmpfs" ino=22634 scontext=u:r:untrusted_app:s0:c250,c256,c512,c768 tcontext=u:object_r:vendor_default_prop:s0 tclass=file permissive=0
    2019-11-26 14:32:21.687 16781-16827/com.example.blockchain E/libc: Access denied finding property "vendor.debug.egl.swapinterval"
    2019-11-26 14:32:22.143 16781-16781/com.example.blockchain I/TAG: onResponse: {"message_id":810991634534636509}
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai: Rejecting re-init on previously-failed class java.lang.Class<com.google.firebase.iid.FirebaseInstanceIdReceiver>: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.VMClassLoader.findLoadedClass(java.lang.ClassLoader, java.lang.String) (VMClassLoader.java:-2)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.findLoadedClass(java.lang.String) (ClassLoader.java:738)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:363)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver android.app.AppComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (AppComponentFactory.java:84)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver androidx.core.app.CoreComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (:60)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.handleReceiver(android.app.ActivityThread$ReceiverData) (ActivityThread.java:3492)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.access$1400(android.app.ActivityThread, android.app.ActivityThread$ReceiverData) (ActivityThread.java:207)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1769)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Looper.loop() (Looper.java:193)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6898)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:537)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:858)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai: Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:134)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.VMClassLoader.findLoadedClass(java.lang.ClassLoader, java.lang.String) (VMClassLoader.java:-2)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.findLoadedClass(java.lang.String) (ClassLoader.java:738)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:363)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver android.app.AppComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (AppComponentFactory.java:84)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at android.content.BroadcastReceiver androidx.core.app.CoreComponentFactory.instantiateReceiver(java.lang.ClassLoader, java.lang.String, android.content.Intent) (:60)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.handleReceiver(android.app.ActivityThread$ReceiverData) (ActivityThread.java:3492)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.access$1400(android.app.ActivityThread, android.app.ActivityThread$ReceiverData) (ActivityThread.java:207)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1769)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:106)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.os.Looper.loop() (Looper.java:193)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:6898)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[]) (Method.java:-2)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run() (RuntimeInit.java:537)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain I/mple.blockchai:     at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:858)
    2019-11-26 14:32:22.145 16781-16781/com.example.blockchain D/AndroidRuntime: Shutting down VM
    2019-11-26 14:32:22.146 16781-16781/com.example.blockchain E/AndroidRuntime: FATAL EXCEPTION: main
        Process: com.example.blockchain, PID: 16781
        java.lang.RuntimeException: Unable to instantiate receiver com.google.firebase.iid.FirebaseInstanceIdReceiver: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
            at android.app.ActivityThread.handleReceiver(ActivityThread.java:3499)
            at android.app.ActivityThread.access$1400(ActivityThread.java:207)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769)
            at android.os.Handler.dispatchMessage(Handler.java:106)
            at android.os.Looper.loop(Looper.java:193)
            at android.app.ActivityThread.main(ActivityThread.java:6898)
            at java.lang.reflect.Method.invoke(Native Method)
            at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
         Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
            at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
            at android.app.AppComponentFactory.instantiateReceiver(AppComponentFactory.java:84)
            at androidx.core.app.CoreComponentFactory.instantiateReceiver(:60)
            at android.app.ActivityThread.handleReceiver(ActivityThread.java:3492)
            at android.app.ActivityThread.access$1400(ActivityThread.java:207) 
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769) 
            at android.os.Handler.dispatchMessage(Handler.java:106) 
            at android.os.Looper.loop(Looper.java:193) 
            at android.app.ActivityThread.main(ActivityThread.java:6898) 
            at java.lang.reflect.Method.invoke(Native Method) 
            at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
            Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
            at java.lang.VMClassLoader.findLoadedClass(Native Method)
            at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
                    ... 12 more
         Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
            at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                    ... 15 more
    2019-11-26 14:32:22.147 16781-16781/com.example.blockchain E/UncaughtException: java.lang.RuntimeException: Unable to instantiate receiver com.google.firebase.iid.FirebaseInstanceIdReceiver: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
            at android.app.ActivityThread.handleReceiver(ActivityThread.java:3499)
            at android.app.ActivityThread.access$1400(ActivityThread.java:207)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769)
            at android.os.Handler.dispatchMessage(Handler.java:106)
            at android.os.Looper.loop(Looper.java:193)
            at android.app.ActivityThread.main(ActivityThread.java:6898)
            at java.lang.reflect.Method.invoke(Native Method)
            at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
         Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
            at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
            at android.app.AppComponentFactory.instantiateReceiver(AppComponentFactory.java:84)
            at androidx.core.app.CoreComponentFactory.instantiateReceiver(:60)
            at android.app.ActivityThread.handleReceiver(ActivityThread.java:3492)
            at android.app.ActivityThread.access$1400(ActivityThread.java:207) 
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1769) 
            at android.os.Handler.dispatchMessage(Handler.java:106) 
            at android.os.Looper.loop(Looper.java:193) 
            at android.app.ActivityThread.main(ActivityThread.java:6898) 
            at java.lang.reflect.Method.invoke(Native Method) 
            at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
            Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/legacy/content/WakefulBroadcastReceiver;
            at java.lang.VMClassLoader.findLoadedClass(Native Method)
            at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
                    ... 12 more
         Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.legacy.content.WakefulBroadcastReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
            at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
                    ... 15 more
    
    
         Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.firebase.iid.FirebaseInstanceIdReceiver" on path: DexPathList[[zip file "/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.blockchain-g4FegWMiU_R7WlQdxEO8Ng==/lib/arm64, /system/lib64]]
    
    
    下面列出了代码可能出错的区域:

    Sending Notification using Request Queue
    
        private val requestQueue: RequestQueue by lazy {
            Volley.newRequestQueue(this.applicationContext)
        }
    
    
        private fun sendNotification(notification: JSONObject) {
            Log.e("TAG", "sendNotification")
            val jsonObjectRequest = object : JsonObjectRequest(FCM_API, notification,
                    Response.Listener<JSONObject> { response ->
                        Log.i("TAG", "onResponse: $response")
                    },
                    Response.ErrorListener {
                        Toast.makeText(this@SecondActivity, "Request error", Toast.LENGTH_LONG).show()
                        Log.i("TAG", "onErrorResponse: Didn't work")
                    }) {
    
                override fun getHeaders(): Map<String, String> {
                    val params = HashMap<String, String>()
                    params["Authorization"] = serverKey
                    params["Content-Type"] = contentType
                    return params
                }
            }
            requestQueue.add(jsonObjectRequest)
        }
    

    **这些是我认为可能发生错误的领域。另外,请帮助我了解我的方法方向是否正确。如果需要更多的片段,请告诉我**

    将您的所有依赖项版本更新为最新版本(特别是从firebase)
    java.lang.ClassNotFoundException:
    崩溃是由依赖项的错误实现引起的。

    首先要做的是确保所有依赖项都是最新版本。看起来你的构建中有很多非常古老的东西。gradle.j Firebase崩溃报告甚至已经完全退役,所以你不应该再使用它了。这就是崩溃的原因吗?我觉得这与我的清单文件有关。我已经使用云实现了通知,但我面临的问题是,设备组中的每个设备都会收到通知,无论是否读取设备的二维码。如何规避这一点?