【问题标题】:App crashing on andorid phone for firebase usage应用程序在 Android 手机上因 Firebase 使用而崩溃
【发布时间】:2019-02-11 01:56:23
【问题描述】:

我正在实现 firebase 的实时数据库。 该应用程序在启动时崩溃。 我在 app/build.gradle 中有以下依赖项

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.0.0-beta01'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.2'
    implementation 'com.google.firebase:firebase-database:16.0.1'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
}

我寻找了其他问题,并提出了一些建议是否可能是由于依赖关系。如果是因为我收到警告,我在哪里可以看到兼容的依赖项

应用 gradle 文件必须依赖 com.google.firebase:firebase-core 才能使 Firebase 服务按预期工作。

我正在关注本教程 https://www.youtube.com/watch?v=EM2x33g4syY&list=PLk7v1Z2rk4hj6SDHf_YybDeVhUT9MXaj1 有人评论说在模型类中使用“私有”。所以我用它作为 Artist 类的变量。但它没有用。 我没有做任何与本教程不同的事情。

更新 1 添加 firebase-core 依赖后,我得到以下构建错误

错误:库 com.google.android.gms:play-services-basement 正在被 [[15.0.1,15.0.1]] 的各种其他库请求,但解析为 16.0.1。禁用插件并使用 ./gradlew :app:dependencies 检查你的依赖树。

更新 2 我按照官方文档将所有依赖项更改为最新版本

  1. firebase-core:16.0.7
  2. firebase 数据库:16.0.6

在文件末尾我还添加了

  1. 应用插件:'com.google.gms.google-services'

在 build.gradle 中我将其更新为

  1. 谷歌服务:4.2.0

它解决了构建问题,但应用仍然崩溃。

【问题讨论】:

  • 我之前用 firebase 创建了应用程序,但现在我收到一个错误,您可以在帖子中添加您的错误吗?它将帮助我比较问题,并更容易为您提供帮助。
  • @guy 用错误信息更新了帖子
  • 为什么会崩溃?
  • @SonaliGupta 您遇到的新错误是什么?在帖子中分享它
  • 试图弄清楚

标签: android firebase firebase-realtime-database


【解决方案1】:

正如您在 documentation 中看到的,您应该在 build.gradle 文件中添加 implementation 'com.google.firebase:firebase-core:16.0.7'

您也可以将您的 firebase-database(实时数据库)版本更新为 16.0.6 implementation 'com.google.firebase:firebase-database:16.0.6'

要检查com.google.android.gms:play-services-basement,您应该查看第一个 build.gradle 文件

buildscript{
repositories{...}
dependencies{
classpath 'com.google.gms:google-services:4.2.0'
}
}

检查版本是否为4.2.0

【讨论】:

  • @SonaliGupta 一次一个问题 ;)
  • @SonaliGupta 如果这个或任何答案已经解决了您的问题,请考虑通过单击复选标记接受它。这向更广泛的社区表明您已经找到了解决方案,并为回答者和您自己提供了一些声誉。没有义务这样做。
  • @SonaliGupta 如果您有新错误,您应该针对特定问题打开新问题,这样如果有人搜索答案,他可以使用此帖子。
【解决方案2】:

从 firebase docs 和这个 post 开始,您需要在任何其他 Firebase 依赖项之前将 firebase-core 添加到 gradle 文件。 在 firebase-database 依赖之前添加这个。

implementation 'com.google.firebase:firebase-core:16.0.7'

【讨论】:

  • 仅仅添加这个是行不通的。是否没有地方知道它可能需要版本明智的所有依赖项。构建失败并出现错误:[[15.0.1,15.0.1]] 的各种其他库正在请求库 com.google.android.gms:play-services-basement,但解析为 16.0.1。禁用插件并使用 ./gradlew :app:dependencies 检查你的依赖树。
  • 我找到了这个列表,但无法确定哪一个用于实时数据库 developers.google.com/android/guides/…
  • 那些不是 firebase 依赖项,请查看我帖子中的文档链接并按照说明如何在您的应用中设置 firebase,文档包括所有 firebase 依赖项的列表
  • 是的,我做到了。我通过工具而不是手动设置它。实时数据库需要添加核心和数据库依赖项。有什么我想念的吗
  • 不,这应该足够了,但是如果您仍然有错误,请分享它们
猜你喜欢
  • 2013-02-17
  • 2017-10-16
  • 1970-01-01
  • 1970-01-01
  • 2018-10-21
  • 1970-01-01
  • 2012-08-11
  • 2022-07-18
  • 2014-10-30
相关资源
最近更新 更多