我正在尝试连接到我的 Firebase 帐户并使用特定位置进行查询,以查看其中是否有任何 GeoFire 位置。为此,我正在使用官方教程,但无法创建 Geofire 对象。教程内容如下:
A GeoFire object is used to read and write geo location data to your Firebase database and to create queries. To create a new GeoFire instance you need to attach it to a Firebase database reference.
DatabaseReference ref = FirebaseDatabase.getInstance().getReference("path/to/geofire");
GeoFire geoFire = new GeoFire(ref);
按照本教程,我遇到了 Android Studio 无法解析 DatabaseReference 符号的问题。
如果我尝试传递 Firebase 对象本身:
Firebase mLocs = new Firebase("https://example.firebaseio.com/Locations");
GeoFire geoFire = new GeoFire(mLocs);
我收到一条错误消息
com.google.firebase.database.DatabaseReference cannot be converted to com.firebase.client.Firebase
我的 Firebase 对象已正确实例化并声明了其上下文。
Firebase.setAndroidContext(this);
知道可能出了什么问题吗?
最佳答案
本教程使用旧版 Firebase SDK。
关注this guide了解如何设置新的 Firebase SDK,然后添加实时数据库功能。
因此,您将在 build.gradle
文件中添加这些依赖项
compile 'com.google.firebase:firebase-core:9.4.0'
compile 'com.google.firebase:firebase-database:9.4.0'
然后,您可以使用 GeoFire for Android github page 中的指南创建 GeoFire
实例。
关于java - 在 Android 上将 GeoFire 与 Firebase 结合使用,但找不到 DatabaseReference 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39174283/