FirebaseAuth.signInWithCredential导致我的Flatter应用程序在调用时崩溃
我对弗利特和Firebase还不熟悉。我正在尝试使用Firebase设置电话身份验证。我在Firebase上创建了一个项目,我的Flitter应用程序已注册 当我运行FirebaseAuth.instance.signInWithCredential(凭据)时,我的应用程序不断崩溃 以下是错误输出: W/BiChannelGoogleApi(23681):[FirebaseAuth:]GetGoogleAPI方法() 返回的Gms:com.google.firebase.auth.api.internal。zzak@30ab46a E/JavaBinder(23681):***未捕获的远程异常!(例外情况如下: 尚未跨流程支持。)E/JavaBinder(23681): java.lang.NoClassDefFoundError:解析失败: Landroid/support/v4/util/ArrayMap;E/JavaBinder(23681):在 com.google.firebase.auth.internal.zzam.zzc(未知来源:22) E/JavaBinder(23681):在 com.google.firebase.auth.internal.zzam.zzde(未知来源:17) E/JavaBinder(23681):在 com.google.firebase.auth.internal.zzam.zzdd(未知来源:8) E/JavaBinder(23681):在 com.google.firebase.auth.internal.zzan.zzdf(未知来源:1) E/JavaBinder(23681):在 com.google.firebase.auth.internal.zzm.isAnonymous(未知来源:47) E/JavaBinder(23681):在 com.google.firebase.auth.internal.zzat.zzi(未知来源:57) E/JavaBinder(23681):在 com.google.firebase.auth.internal.zzat.zzg(未知来源:10) E/JavaBinder(23681):在 com.google.firebase.auth.FirebaseAuth.zza(未知来源:62) E/JavaBinder(23681):在 com.google.firebase.auth.FirebaseAuth$zzb.zza(未知来源:5) E/JavaBinder(23681):在 com.google.firebase.auth.api.internal.zzcv.zzdx(未知来源:14) E/JavaBinder(23681):在 com.google.firebase.auth.api.internal.zzen.zzen(未知来源:35) E/JavaBinder(23681):在 com.google.firebase.auth.api.internal.zzen.zza(未知来源:41) E/JavaBinder(23681):在 com.google.firebase.auth.api.internal.zzep.zza(未知来源:9) E/JavaBinder(23681):在 com.google.firebase.auth.api.internal.zzdx.dispatchTransaction(未知 资料来源:9)E/JavaBinder(23681):见 com.google.android.gms.internal.firebase_auth.zza.onTransact(未知) 资料来源:13)E/JavaBinder(23681):at android.os.Binder.execTransactionInternal(Binder.java:1021) E/JavaBinder(23681):在 android.os.Binder.execTransact(Binder.java:994)E/JavaBinder(23681): 原因:java.lang.ClassNotFoundException:未找到类 路径为“android.support.v4.util.ArrayMap”,路径为:DexPathList[[zip文件…”FirebaseAuth.signInWithCredential导致我的Flatter应用程序在调用时崩溃,firebase,flutter,firebase-authentication,Firebase,Flutter,Firebase Authentication,我对弗利特和Firebase还不熟悉。我正在尝试使用Firebase设置电话身份验证。我在Firebase上创建了一个项目,我的Flitter应用程序已注册 当我运行FirebaseAuth.instance.signInWithCredential(凭据)时,我的应用程序不断崩溃 以下是错误输出: W/BiChannelGoogleApi(23681):[FirebaseAuth:]GetGoogleAPI方法() 返回的Gms:com.google.firebase.auth.api.int
我期待Firebase用户返回并成功通过身份验证。看起来Firebase更新了他们的身份验证,因为教程中使用的许多方法都不存在了。如果其他人遇到此问题,这是因为在开发Flatter应用程序时,Android Studio提示了一个新版本n个颤振可用,我点击了升级。但需要在终端中执行手动颤振升级,并将Kotlin升级到最新版本 我为解决此问题所采取的步骤: 更新了以下文件:
android.useAndroidX=true
android.enableJetifier=true
await FirebaseAuth.instance
.signInWithCredential(credential).then((authResult){
print(authResult.user);})
我得到一个返回的AuthResult对象,其中包含FireBaseUser对象。以下是输出:
FirebaseUser({uid: yZXXXXXXXXXXXX, isAnonymous: false, phoneNumber: +18005558989, ...})
- 在Android Studio上打开您的颤振项目
- 然后,更新所有gradle和kotlin并迁移kotlin
- 然后,迁移到Android X
- 然后,打开颤振项目
- 颤振升级
- 颤振酒吧升级
- 扑通
FirebaseUser({uid: yZXXXXXXXXXXXX, isAnonymous: false, phoneNumber: +18005558989, ...})