Boa Noite! Já fiz o curso e estou fazendo alguns exercícios a mais pra fixar melhor o conhecimento.Me ocorreu um problema e não sei o motivo, segue o código a baixo.
public Livro BuscaumLivro()
{
livro= new Livro();
final String titulo="7";
FirebaseDatabase firebasedatabase;
firebasedatabase=FirebaseDatabase.getInstance();
DatabaseReference myRef = firebasedatabase.getReference();
myRef.addValueEventListener(new ValueEventListener() {
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot ds : dataSnapshot.getChildren()) {
livro.setTitulo(ds.child(titulo).getValue(Livro.class).getTitulo());
livro.setAutor(ds.child(titulo).getValue(Livro.class).getAutor());
livro.setAnoedicao(ds.child(titulo).getValue(Livro.class).getAnoedicao());
livro.setEditora(ds.child(titulo).getValue(Livro.class).getEditora());
livro.setLocalizacao(ds.child(titulo).getValue(Livro.class).getLocalizacao());
Log.e(TAG, livro.getAutor());
}
}
@Override
public void onCancelled(DatabaseError error) {
// Failed to read value
Log.w(TAG, "Failed to read value.", error.toException());
}
});
Log.e(TAG, livro.getAutor()+"ultimo");
return livro;
}
eu queria saber o motivo de aparecer primeiro a mensagem no LOG a mensagem null ultimo e depois aparece o nome do autor, ele esta me retornando nulo