在Android上使用GeoFire和Firebase,但找不到DatabaseReference类

时间:2016-08-26 20:34:52

标签: java android firebase firebase-realtime-database geofire

我正在尝试连接到我的Firebase帐户,并使用特定位置进行查询,以查看其中是否存在任何GeoFire位置。为此,我使用官方教程,但无法创建Geofire对象。以下是教程所说的内容:

  

GeoFire对象用于读取和写入地理位置数据   Firebase数据库并创建查询。创建一个新的GeoFire   实例,您需要将其附加到Firebase数据库引用。

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无法转换为   com.firebase.client.Firebase

我的Firebase对象已正确实例化并声明其上下文。

Firebase.setAndroidContext(this);

任何想法可能出错?

1 个答案:

答案 0 :(得分:3)

本教程使用旧的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个实例