Como recuperar valores 'duplos' salvos em uma chave no Firebase?
Eu guardeiGeofire
coordenadas no banco de dados e agora estou tentando recuperá-las usandochildEventListener()
como isso:
mDatabase.child("geofire").child(key).child("l").addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
if (dataSnapshot.getValue() != null) {
//error on line below
Map<Double, Double> newRequest = (Map<Double, Double>) dataSnapshot.getValue();
venueLatString = newRequest.get(0).toString();
venueLngString = newRequest.get(1).toString();
Toast.makeText(getBaseContext(), dataSnapshot.getValue().toString(), Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getBaseContext(), "NULLL", Toast.LENGTH_SHORT).show();
}
}
...
...
});
As coordenadas de Geofire são armazenadas em um banco de dados como este:
Estou recebendo este erro:java.lang.ClassCastException: java.lang.Double cannot be cast to java.util.Map
na linha especificada acima.
O que há de errado aqui e por que estou recebendo esse erro?
Por favor deixe-me saber.