Flutter 应用程序在 Android 上首次打开时出现 ClassNotFoundException 崩溃

Flutter app crashing when opening first time with ClassNotFoundException on Android

我的 Flutter 应用程序在从 Play 商店安装后第一次打开时崩溃。之后它工作正常。以下是崩溃报告

java.lang.NoClassDefFoundError: 
  at com.google.android.gms.internal.zzccn.<init> (Unknown Source:3)
  at com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver.onReceive (Unknown Source:6)
  at android.app.ActivityThread.handleReceiver (ActivityThread.java:3273)
  at android.app.ActivityThread.-wrap17 (Unknown Source)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1690)
  at android.os.Handler.dispatchMessage (Handler.java:105)
  at android.os.Looper.loop (Looper.java:164)
  at android.app.ActivityThread.main (ActivityThread.java:6592)
  at java.lang.reflect.Method.invoke (Native Method)
  at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:240)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:769)
Caused by: java.lang.ClassNotFoundException: 
  at dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.java:93)
  at java.lang.ClassLoader.loadClass (ClassLoader.java:379)
  at java.lang.ClassLoader.loadClass (ClassLoader.java:312)

这与 FCM 消息传递有关吗?错误是说 ClassNotFound 但是,如果是因为缺少 java class,那么从第二次开始它是如何工作的?

我也有这个问题,只需更新 com.google.gms: google-services: 3.2.1 到 com.google.gms: google-services: 4.2.0 里面"Android\App\build.grandle" 这就是问题所在。

更多信息:Problem reported in github

提醒一下,如果 MainActivity class 的包与 AndroidManifest.xml 中的属性包匹配,请仔细检查 android/src/main/java。