一尘不染

Flutter:不存在Firestore组件

flutter

Flutter下的Firestore数据库有问题。我已经完成了所有工作,按照软件包设置文档的说明进行了研究,调查了2-3个完成的公共应用程序,并尝试使用该软件包作为他人使用。我什至尝试实现本机Firestore初始化,因为我认为问题出在平台端,但是应用程序仍然

java.lang.NullPointerException:不存在Firestore组件。

当我尝试使用Firestore实例时。

在project / build.gradle我设置

classpath’com.google.gms:google-services:4.0.1’

依赖并也导入

‘com.google.firebase:firebase-core:16.0.1’

‘com.android.support:multidex:1.0.3’

我的应用程序文件夹中有google-service.json。

谁能帮助我解决这个问题?我浪费了一天,却一无所获。非常感谢!


阅读 271

收藏
2020-08-13

共1个答案

一尘不染

好吧,所以我想通了另一个问题。

我不知道我是否是唯一一个不认识的人,但是由于新的gradle更新,

classpath’com.google.gms:google-services:3.2.1’

不推荐使用。我真的不知道这是怎么回事,但是这造成了Flutter无法正确获取实例并引发nullPointer异常。如果有人遇到相同的问题(调试控制台显示一些已过时的警告),则应更改

buildscript {
    repositories {
        google()
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.0'
        classpath 'com.google.gms:google-services:3.2.1'

     }
  }
}

android / build.gradle中的行

buildscript {
    repositories {
            google()
            jcenter()
        }

    dependencies {
            classpath 'com.android.tools.build:gradle:3.3.0'
            classpath ('com.google.gms:google-services:3.2.1') {
                exclude group: 'com.google.guava', module: 'guava-jdk5'
       }
    }
}

我真的不知道,为什么过时的依赖形式包含会导致这样的问题,但是这种更改对我有用,我希望它也能对其他人有所帮助。除此之外,我认为这不会造成浪费,因为很多文档都应该包括针对开发人员的此修复程序。

2020-08-13