我试图使用GeoFireStore来设置,获取和查询位置。
我首先尝试通过以下方式设置setLocation:
geoFirestoreRef = FirebaseFirestore.getInstance().collection("Locations");
geoFirestore = new GeoFirestore(geoFirestoreRef);
geoFirestore.setLocation( auth.getUid(), new GeoPoint(Lat_Coordinate,Lon_Coordinate) );
一切正常,并在我的数据库中创建了以下内容:
现在,我尝试使用以下方法获取getLocation以查看其是否正常工作:
geoFirestore.getLocation( auth.getUid(), new GeoFirestore.LocationCallback() {
@Override
public void onComplete(GeoPoint geoPoint, Exception e) {
Log.d("ERROR", "Error getting documents: " + e);
}
} );
出于某种原因,无法获得任何可以在数据库中看到此位置的信息。
我得到一个例外:java.lang.NullPointerException: Location doesn't exist
。
请问有什么想法吗?
谢谢
答案 0 :(得分:0)
我的图书馆也有这个问题。在查看源代码时,我看到了一点mistake here。
所以我做了一个pull request with the fix。您可以使用fork链接,也可以克隆存储库并使用:
if (geoPoint != null)