I'm having some problem with Firebase method addValueEventListner(). My code should bring me user messages from my database and show it in a ListView called conversa, but it's not getting anything back.
Debugging the code, it did not enter in new ValeuEventListener(...) and getView() neither, although getView is working fine.
I made a teste filling the ArrayList with Mensagem local objetcs and it works.
Anyone knows where am I messing up?
The conversation activity:
public class ConversaActivity extends AppCompatActivity {
<...>
    mensagens = new ArrayList<>();
    adapter = new MensagemAdapter(
            ConversaActivity.this,
            mensagens);
    conversa.setAdapter(adapter);
    //Buscando todas as mensagens
    firebase = ConfigFirebase.getFirebase();
    firebase.child("mensagem").child(id_remetente).child(id_destinatario);
    //Listener para as mensagens
    valueEventListenerMensagem = new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            mensagens.clear();
            for(DataSnapshot dados: dataSnapshot.getChildren()) {
                Mensagem mensagem_recuperada = dados.getValue(Mensagem.class);
                mensagens.add(mensagem_recuperada);
            }
            adapter.notifyDataSetChanged();
        }
        @Override
        public void onCancelled(DatabaseError databaseError) {
        }
    };
    firebase.addValueEventListener(valueEventListenerMensagem);
<...> 
}
The messages adapter:
public class MensagemAdapter extends ArrayAdapter<Mensagem> {
private Context context;
private ArrayList<Mensagem> mensagens;
public MensagemAdapter(Context c, ArrayList<Mensagem> objects) {
    super(c, 0, objects);
    this.context = c;
    this.mensagens = objects;
}
@Override
public View getView(int position, @Nullable View convertView, ViewGroup parent) {
    View view = null;
    if(mensagens != null) {
        Preferencias preferencias = new Preferencias(context);
        String id_remetente = preferencias.getIdentificador();
        //Inicializando metódo que traz o layout
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
        Mensagem mensagem_index = mensagens.get(position);
        if(id_remetente.equals(mensagem_index.getIdUsuario())) {
            view = inflater.inflate(R.layout.item_mensagem_enviada, parent, false);
            TextView textoMensagem = (TextView) view.findViewById(R.id.id_msg_enviada);
            textoMensagem.setText(mensagem_index.getMensagem());
        } else {
            view = inflater.inflate(R.layout.item_mensagem_recebida, parent, false);
            TextView textoMensagem = (TextView) view.findViewById(R.id.id_msg_recebidas);
            textoMensagem.setText(mensagem_index.getMensagem());
        }
    }
    return view;
}
}
Firebase "mensagens" branchs are like - added with .push():
 mensagens
      id_remente
          id_destinatario
                mensagem_object
                mensagem_object
                ....