ValueEventListener retorna null

  • Respostas:0
SayidPef
  • Posts no fórum: 1

07/08/2018, 23:22:13 via Web

Boa noite, estou tentando recuperar dados que cadastrei no firebase, são dados de medidas, como Altura, peso, etc.

tenho a classe que usei para cadastrar esses dados (Compo.class), usei um ValueEventListener, para recuperar, e alguns dados são necessários para alguns calculos, por isso estou tentando recupera-los para uma String (depois faço a conversão para Double), porem toda vez que rodo o app, esse Listener sempre retorna null, mesmo a variavel estando no database.

Saulo Juan · há segundos
A estrutura da base de dados é esta, e eu preciso recuperar o valor sublinhado:
image

e já usei essas variações do codigo:

 protocolRef = ConfiguracaoFirebase.getFirebaseDatabase()
            .child("usuarios")
            .child(UsuarioFirebase.getIdentificadorUsuario())
            .child("Clientes")
            .child(Base64Custom.codificarBase64( txtClientMail ))
            .child("Antropometria")
            .child( txtProtocol );

    protocolRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

            String fatMass = dataSnapshot.child("fatMass").getValue(String.class);

protocolRef = ConfiguracaoFirebase.getFirebaseDatabase()
                .child("usuarios")
                .child(UsuarioFirebase.getIdentificadorUsuario())
                .child("Clientes")
                .child(Base64Custom.codificarBase64( txtClientMail ))
                .child("Antropometria")
                .child( txtProtocol )
                .child("fatMass");

        protocolRef.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

                String fatMass = dataSnapshot.getValue(String.class);

protocolRef = ConfiguracaoFirebase.getFirebaseDatabase()
            .child("usuarios")
            .child(UsuarioFirebase.getIdentificadorUsuario())
            .child("Clientes")
            .child(Base64Custom.codificarBase64( txtClientMail ))
            .child("Antropometria")
            .child( txtProtocol );

    protocolRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

            Compo fatMass = dataSnapshot.getValue(Compo.class);

             txtBf = fatMass.getFatMass;

caso alguém já tenha passado por isso, ou saiba o que está causando o erro, ficaria muito feliz com uma ajudinha.

Seja o primeiro a responder