我正在开发一个 android 应用程序,我想在其中保存带有GeoFire
位置的数据,然后根据位置获取它。
问题是我不确定如何保存数据以及GeoFire
位置,尽管我可以使用.push().setValue()
方法保存它。
我实际上没有代码,因为我不知道如何做我想做的事。
请告诉我。
抱歉,如果问题似乎格式错误。我在这里仍然是初学者。
我正在开发一个 android 应用程序,我想在其中保存带有GeoFire
位置的数据,然后根据位置获取它。
问题是我不确定如何保存数据以及GeoFire
位置,尽管我可以使用.push().setValue()
方法保存它。
我实际上没有代码,因为我不知道如何做我想做的事。
请告诉我。
抱歉,如果问题似乎格式错误。我在这里仍然是初学者。
String key_of_data= ref.child("feeds").push(data).getKey();
现在key_of_data
变量包含提要数据的键。因此,要保存该数据,唯一的选择是使用 GeoFire 创建对该键的引用。所以key_of_data
作为 的键给出geoFire
。
geoFire = new GeoFire(ref.child("user_location"));
geoFire.setLocation(key_of_data, new GeoLocation(lattitude, longitude));
这就是您保存数据的方式。要检索数据,请使用以下代码。
geoFire=newGeoFire(FirebaseDatabase.getInstance().getReference().child("users_location");
geoQuery = geoFire.queryAtLocation(geoLocation), 1);
geoQuery.addGeoQueryEventListener(new GeoQueryEventListener() {
@Override
public void onKeyEntered(String key, GeoLocation location) {
//key is the key to the feed data.
}
};
有关更多详细信息,请参阅此处的 Stack 帖子