Wie kann ich beispielsweise alle Childs von "compresor_1" abrufen?Wie Sie die Daten abrufen? Firebase 3.0-Datenbank
Firebase Datenbank:
"CompresoresEstandar" : {
"Compresor_1" : {
"Marca" : "SANDEN",
"Modelo" : "505/5H09",
"Canales" : "PV5",
"Dimametro-MM" : "120",
"Voltios" : "12",
"Conexion" : "V-O",
},
"Compresor_2" : {
"Marca" : "SANDEN",
"Modelo" : "505/5H09",
"Canales" : "PV5",
"Dimametro-MM" : "120",
"Voltios" : "12",
"Conexion" : "V-O",
},
dieses Beispiel aus dem Netz versucht, aber es zeigt mir diesen Fehler:
com.google.firebase.database.DatabaseException: Class java.util.Map has generic type parameters, please use GenericTypeIndicator instead
UPDATE 1
bereits versucht, diese:
GenericTypeIndicator<Map<String, String>> genericTypeIndicator = new GenericTypeIndicator<Map<String, String>>() {};
Map<String, String> map = dataSnapshot.getValue(genericTypeIndicator);
Und:
Map<String,String> map = dataSnapshot.getValue(Map.class);
mit dem gleichen Fehler.
UPDATE 3
Datasnapshot diese Informationen enthält, wie kann ich "jedes Objekt teilen?" .get ("modelo") ruft das erste Element mit diesem Schlüssel ab.
DataSnapshot { key = CompresoresEstandar, value = {Compresor_2={Letras Culata=, Voltios=12, Marca=SANDEN, Conexion=V-R, Canales=2A, RefACR=130002, Modelo=505/5H09, Dimametro-MM=125}, Compresor_3={Letras Culata=, Voltios=12, Marca=SANDEN, Conexion=V-C, Canales=2A, RefACR=130003, Modelo=505/5H09, Dimametro-MM=125}, Compresor_1={Letras Culata=, Voltios=12, Marca=SANDEN, Conexion=V-O, Canales=PV5, RefACR=130001, Modelo=505/5H09, Dimametro-MM=120}} }
ARBEITS CODE
@Override
public void onStart(){
super.onStart();
final FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference compresoresRef = database.getReference("CompresoresEstandar");
compresoresRef.orderByChild("Ref").addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
dataSnapshot.getChildren();
CompresorModel coe = dataSnapshot.getValue(CompresorModel.class);
String modelo = coe.getModelo();
String marca = coe.getMarca();
String canales = coe.getCanales();
textData1.setText(modelo);
textData2.setText(marca);
textData3.setText(canales);
}
Mögliche Duplikate von [Klasse java.util.Map hat generische Typparameter, bitte verwenden Sie stattdessen GenericTypeIndicator] (http://stackoverflow.com/questions/37688031/class-java-util-map-has-generic-type- Parameter-Please-Use-Generictypindicator) –
Versuchte diese Lösungen vor aber löste es nicht. – Xaloju
Zeigen Sie, was Sie mit 'GenericTypeIndicator' probiert haben. –