Recuperar dados Firebase

0 respostas
G

Por favor, alguem poderia tentar me ajudar a resolver esse problema?

​Não estou conseguindo recuperar os dados de um nó (animais). Segue o modelo de como está o banco de dados no firebase, o código das classes e o log.

b

public class ConfiguracoesAnimalActivity extends AppCompatActivity {

private EditText editAnimalNome, editAnimalIdade, editAnimalraca;

private DatabaseReference firebaseRef;

private String idUsuarioLogado;

private String idAnimal;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_configuracoes_animal);

    //Configurações iniciais
    inicializarComponentes();
    firebaseRef = ConfiguracaoFirebase.getFirebaseDatabase();
    idUsuarioLogado = UsuarioFirebase.getIdentificadorUsuario();

    //Configurações Toolbar
    Toolbar toolbar = findViewById(R.id.toolbarPrincipal);
    toolbar.setTitle("Configurações animal");
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);


    DatabaseReference animalRef = firebaseRef
            .child("animais")
            .child(idUsuarioLogado)
            .child(idAnimal); 

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

            if (dataSnapshot.getValue() != null) {
                Animal animal = dataSnapshot.getValue(Animal.class);
                editAnimalNome.setText(animal.getNome());
                editAnimalIdade.setText(animal.getIdade());
                editAnimalraca.setText(animal.getRaca());
            }

        }

        @Override
        public void onCancelled(DatabaseError databaseError) {
        }
    });
}

public void validarDadosAnimal(View view) {

    //Valida se os campos foram preenchidos
    String nome = editAnimalNome.getText().toString();
    String idade = editAnimalIdade.getText().toString();
    String raca = editAnimalraca.getText().toString();

    if (!nome.isEmpty()) {
        if (!idade.isEmpty()) {
            if (!raca.isEmpty()) {
                Animal animal = new Animal();
                animal.setIdAnimal(idAnimal);
                animal.setNome(nome);
                animal.setIdade(idade);
                animal.setRaca(raca);
                animal.salvar();
                finish();

            } else {
                exibirMensagem("Digite uma categoria");
            }
        } else {
            exibirMensagem("Digite uma taxa de entrega");
        }
    } else {
        exibirMensagem("Digite um nome para a empresa");
    }

}

private void exibirMensagem(String texto) {
    Toast.makeText(this, texto, Toast.LENGTH_SHORT)
            .show();
}


private void inicializarComponentes() {
    editAnimalNome = findViewById(R.id.editAnimalNome);
    editAnimalIdade = findViewById(R.id.editAnimalIdade);
    editAnimalraca = findViewById(R.id.editRacaAnimal);

}

}

public Animal() {
DatabaseReference firebaseRef = ConfiguracaoFirebase.getFirebase();

DatabaseReference animalRef= firebaseRef
            .child("animais");
    setIdProduto( animalRef.push().getKey() );
}
public void validarDadosAnimal(View view){

//Valida se os campos foram preenchidos

String nome = editAnimalNome.getText().toString();

String idade = editAnimalIdade.getText().toString();

String raca = editAnimalRaca.getText().toString();

if( !nome.isEmpty()){

if( !descricao.isEmpty()){

if( !preco.isEmpty()){

Animal animal = new Animal();

animal.setIdUsuario( idUsuarioLogado );

animal.setNome( nome );

animal.setIdade( idade );

animal.setraca( raca );

animal.salvar();

finish();

exibirMensagem(Animal salvo com sucesso!);

}else{

exibirMensagem(Digite um raça para o animal);

}

}else{

exibirMensagem(Digite a idade do animal);

}

}else{

exibirMensagem(Digite um nome para o animal);

}

}

private void exibirMensagem(String texto){

Toast.makeText(this, texto, Toast.LENGTH_SHORT).show();

}
Criado 4 de dezembro de 2018
Respostas 0
Participantes 1