【问题标题】:When i add Firebase Realtime database in my app it start crashing当我在我的应用程序中添加 Firebase 实时数据库时,它开始崩溃
【发布时间】:2020-06-23 11:45:30
【问题描述】:

我正在尝试将 Firebase 实时数据库添加到我的 Android 应用程序中。在我添加之前它工作正常

implementation 'com.google.firebase:firebase-database:19.2.1'

在我的 Gradle (module:App) 中添加 Firebase 实时数据库。添加后,我的应用程序在启动时崩溃。首先它显示一个崩溃错误,说“再次启动应用程序”,然后单击它再次崩溃并显示“关闭应用程序”。 我试图在谷歌上搜索,但找不到这个特定问题的答案。 任何人都可以给出任何提示吗? 这里是所有的 gradle 依赖

    dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'de.hdodenhof:circleimageview:3.1.0'
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.google.firebase:firebase-auth:16.0.5'
    implementation 'androidx.annotation:annotation:1.1.0'
    implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
    implementation 'com.google.firebase:firebase-database:19.2.1'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    implementation 'com.google.android.material:material:1.1.0'
    //noinspection GradleCompatible,GradleCompatible
    implementation 'com.android.support:cardview-v7:28.0.0'

}

这是日志文件的一部分,它是红色的:

--------- beginning of crash
2020-03-11 18:45:31.616 6390-6390/com.example.firebasechat E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.firebasechat, PID: 6390
    java.lang.NoSuchMethodError: No virtual method setTokenProvider(Lcom/google/firebase/internal/InternalTokenProvider;)V in class Lcom/google/firebase/FirebaseApp; or its super classes (declaration of 'com.google.firebase.FirebaseApp' appears in /data/app/com.example.firebasechat-1/base.apk)
        at com.google.firebase.auth.zzp.create(Unknown Source)
        at com.google.firebase.components.ComponentRuntime.lambda$new$0(com.google.firebase:firebase-components@@16.0.0:69)
        at com.google.firebase.components.ComponentRuntime$$Lambda$1.get(com.google.firebase:firebase-components@@16.0.0)
        at com.google.firebase.components.Lazy.get(com.google.firebase:firebase-components@@16.0.0:53)
        at com.google.firebase.components.ComponentRuntime.initializeEagerComponents(com.google.firebase:firebase-components@@16.0.0:158)
        at com.google.firebase.FirebaseApp.initializeAllApis(com.google.firebase:firebase-common@@19.3.0:563)
        at com.google.firebase.FirebaseApp.initializeApp(com.google.firebase:firebase-common@@19.3.0:304)
        at com.google.firebase.FirebaseApp.initializeApp(com.google.firebase:firebase-common@@19.3.0:268)
        at com.google.firebase.FirebaseApp.initializeApp(com.google.firebase:firebase-common@@19.3.0:253)
        at com.google.firebase.provider.FirebaseInitProvider.onCreate(com.google.firebase:firebase-common@@19.3.0:51)
        at android.content.ContentProvider.attachInfo(ContentProvider.java:1751)
        at android.content.ContentProvider.attachInfo(ContentProvider.java:1726)
        at com.google.firebase.provider.FirebaseInitProvider.attachInfo(com.google.firebase:firebase-common@@19.3.0:45)
        at android.app.ActivityThread.installProvider(ActivityThread.java:5811)
        at android.app.ActivityThread.installContentProviders(ActivityThread.java:5403)
        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5342)
        at android.app.ActivityThread.-wrap2(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1528)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6077)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)

2020-03-11 18:45:31.961 6390-6409/com.example.firebasechat W/DynamiteModule: Local module descriptor class for com.google.firebase.auth not found.
2020-03-11 18:45:32.056 6390-6409/com.example.firebasechat I/FirebaseAuth: [FirebaseAuth:] Loading module via FirebaseOptions.
2020-03-11 18:45:32.056 6390-6409/com.example.firebasechat I/FirebaseAuth: [FirebaseAuth:] Preparing to create service connection to gms implementation

【问题讨论】:

  • 你的错误在哪里?请发布logcat
  • 你能添加你的崩溃日志吗
  • 尝试添加配置文件。 firebase.google.com/docs/android/setup
  • @PratikButani 日志猫已添加。它很长,所以我只添加了红色的线条。请让我知道是否需要所有条目。谢谢!
  • 请编辑问题以显示 build.gradle 中的所有依赖项。

标签: android firebase gradle firebase-realtime-database firebase-authentication


【解决方案1】:

您需要确保您的所有 Firebase 库都是最新的。通常不可能相互混合和匹配版本。最新版本都显示在release notes。现在,您的 firebase-auth 依赖项相当陈旧。应该是 19.2.0。

文档在June 2019 上提供了有关主要版本更新的正确信息

【讨论】:

  • 将 firebase-auth 更新到 19.2.0 解决了这个问题。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多