0

我正在 Android Platform 上创建一个基于地图的应用程序。我在这个项目中使用 Firebase Firestore 作为后端数据库。我想在我的 Firestore 数据库中添加 GeoFire。我在我的 gradle 文件中添加了以下依赖项,以便在我的项目中添加 Firestore 和 GeoFire:

implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-firestore:17.1.2'
implementation 'com.firebase:geofire-android:2.3.1'

但是在我添加成功后 gradle sync

CollectionReference geoFirestoreRef = FirebaseFirestore.getInstance().collection("my-collection");
GeoFirestore geoFirestore = new GeoFirestore(geoFirestoreRef);

它给出了错误“无法解析 GeoFirestore”

尽管我已在我的 gradle 文件中添加了所有必需的依赖项,但我不明白为什么会出现此错误。还附上图。 在此处输入图像描述

4

1 回答 1

1

您的代码中的问题是您正在尝试使用适用于 Android 的 GeoFirestore 库,但您使用的是适用于 Android 的 GeoFire的依赖项,这是一个完全不同的产品。GeoFirestore 与 Cloud Firestore 一起使用,而 GeoFire 与 Firebase 实时数据库一起使用。

这也是您收到以下错误的原因:

无法解析 GeoFirestore

因为您正在尝试创建一个GeoFirestore未导入的类的对象。为了解决这个问题,你需要在你的 build.gradle 文件中添加相应的 GeoFirestore 依赖:

implementation 'com.github.imperiumlabs:GeoFirestore-Android:v1.1.1'

在您的 build.gradle (项目)文件中:

allprojects {
    repositories {
        //...
        maven { url 'https://jitpack.io' }
    }
}

在这里您可以找到更多信息。

于 2018-11-16T11:10:30.793 回答