Firebase récupérer l'enfant Android

Je suis accédant à Firebase sur Android. Je veux récupérer un enfant à partir de l'arbre. Mon code est (mis à jour)

         f.child("Germany").child("Username").child("Alan Turing").addChildEventListener(new ChildEventListener() {
        //Retrieve new posts as they are added to Firebase
        @Override
        public void onChildAdded(DataSnapshot snapshot, String previousChildKey) {
            Map<String, Object> newPost = (Map<String, Object>) snapshot.getValue();
            System.out.println("Author: " + newPost.get("Message"));
            disp_msg = (TextView)findViewById(R.id.display_msg);
            disp_msg.setText(newPost.get("Message").toString());
           //System.out.println("Title: " + newPost.get("title"));
        }

Dans mon firebase j'ai

Language
  Germany
    Username
      Alan Turing
        Message
          -Jf6ShYy7niHrqg_x4Tc: "tom"
          -Jf9v0xHAxINUUANrORU: "perfect"

Quand j'ai couru le code ci-dessus, j'obtiens:

Author: {
  Username={
    Alan Turing={
      Message={
        -Jf6ShYy7niHrqg_x4Tc=tom, 
        -Jf9v0xHAxINUUANrORU=perfect!
      }
    }
  }
}

Mais je ne veux que les messages, et non pas l'ensemble de Firebase base de données.

Alors, comment puis-je obtenir seulement l'enfant spécifié?

seulement cela fonctionne jusqu'à présent, mais il revient tout firebase:

         f.addChildEventListener(new ChildEventListener() {
        //Retrieve new posts as they are added to Firebase
        @Override
        public void onChildAdded(DataSnapshot snapshot, String previousChildKey) {
            Map<String, Object> newPost = (Map<String, Object>) snapshot.getValue();
            System.out.println("Author: " + newPost.get("Germany"));
            disp_msg = (TextView)findViewById(R.id.display_msg);
            disp_msg.setText(newPost.get("Germany").toString());
           //System.out.println("Title: " + newPost.get("title"));
        }

Je le garde comme suit:

Firebase usersRef = f.child("Language");
usersRef .child("Germany").child("Username").child("Alan Turing").child("Message").push().setValue(writeMsgField.getText().toString());
  • Connexes: stackoverflow.com/questions/27826007/...
  • Merci de ne pas le modifier de votre code existant, comme il le fait d'incompatibilité avec ma réponse. Ajouter l'information est bien, mais laisser le code d'origine/question intact (sauf si vous êtes juste clarifier les choses).
  • oui, j'ai ajouté le code d'origine tout en bas
InformationsquelleAutor nothingness | 2015-01-08