void initGeoFireListener() {
Geofire.initialize("availableDrivers");
print(position!.longitude.toString() + " " + position!.latitude.toString());
//Comment[enter image description here][1]
try {
print("this is a TRY");
Geofire.queryAtLocation(position!.longitude, position!.latitude, 10)!
.listen((map) {
if (map != null) {
var callBack = map["callBack"];
print("map =" + map.toString());
print("callback = " + callBack);
switch (callBack) {
case Geofire.onKeyEntered:
nearByAvailableDrivers nearbyavailabledrivers =
nearByAvailableDrivers();
nearbyavailabledrivers.key = map["key"];
nearbyavailabledrivers.latitude = map["latitude"];
nearbyavailabledrivers.longitude = map["longitude"];
GeoFireAssistant.nearByAvailableDriversList
.add(nearbyavailabledrivers);
if (nearbyavailabledriverskeyLoaded == true) {
print("onkeyEntered");
updateAvailableDirverOnMap();
} else {
print("no drives available");
}
break;
case Geofire.onKeyExited:
print("onKeyExited");
GeoFireAssistant.removeDriverFromList(map["key"]);
updateAvailableDirverOnMap();
break;
case Geofire.onKeyMoved:
print("onKeyMoved");
nearByAvailableDrivers nearbyavailabledrivers =
nearByAvailableDrivers();
nearbyavailabledrivers.key = map["key"];
nearbyavailabledrivers.latitude = map["latitude"];
nearbyavailabledrivers.longitude = map["longitude"];
GeoFireAssistant.updateDriverNearbyLocation(
nearbyavailabledrivers);
updateAvailableDirverOnMap();
break;
case Geofire.onGeoQueryReady:
// All Intial Data is loaded
print("onGeoQueryReady");
nearbyavailabledriverskeyLoaded = true;
//updateAvailableDirverOnMap();
break;
}
} else {
print("this is a CATCH");
}
setState(() {});
//Comment
});
} catch (e) {
print("error = " + e.toString());
}
}

Given above is my code. I am trying to get the nearest drivers as I am working on a taxi booking application.
I am using flutter_geofire: ^2.0.0
I am trying to get the availableDrivers from Real Time Database but my (map) response is map ={result: [], callBack: onGeoQueryReady}