Mein Projekt hat 2 Apps: Admin-App und Client-App. Erstens, ich brauche die Admin-app verwenden, um Daten in Firebase zu setzen und hier ist meine DatenklasseUpdate-Objekt-Feld in Firebase
public class AllData {
private String placeName;
private ArrayList<String> category;
private String address;
private String openingHour;
private String website;
private HashMap<String, String> review; }
und ich verwende folgende Codedaten zu setzen in Firebase
AllData alldata = new AllData(placeName, category, address,
, openingHour, website, null);
mDatabaseReference = mFirebaseDatabase.getReference().child("Store Data");
DatabaseReference storeData = mDatabaseReference.child(placeName);
storeData.setValue(alldata);
I gesetzt haben die Überprüfung Feld als null, weil ich möchte, dass meine Benutzer lassen, jeden Platz auf dem Client-App und synchronisieren sie es in Firebase zur Überprüfung Feld Bewertung als HashMap<UserName, Review>
ich diese Codes in Client-app Beitrag Push-to-Feuerbasis
HashMap<String, String> reviewMap = new HashMap<>();
reviewMap.put(UserName, review);
mDatabase = FirebaseDatabase.getInstance();
mReference = mDatabase.getReference().child("Store Data").child(selectedPlace.placeName).child("review");
mReference.push().setValue(reviewMap);
Dies ist kein richtiger Ansatz, aber das ist alles was ich konnte. Ich möchte die Überprüfung des Benutzers asynchron auf das AllData-Überprüfungsfeld in Firebase aktualisieren. Wie kann ich das erreichen? Jede Antwort wird geschätzt!
Was ich brauche, ist das Reviewfeld der AllData in der Firebase zu setzen. Ihre Antwort liefert das gleiche Ergebnis wie meins, aber in einer verkürzten Weise Danke trotzdem –
Dann müssen Sie einen Listener verwenden und 'setValue' direkt auf den dataSnapshot-Objekten verwenden. –