Estou recebendo o erro
2021-02-23 06:18:49.894 3833-3833/br.com.edubona.agenda E/AndroidRuntime: FATAL EXCEPTION: main
Process: br.com.edubona.agenda, PID: 3833
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String br.com.edubona.agenda.model.Telefone.getNumero()' on a null object reference
at br.com.edubona.agenda.ui.adapter.ListaAlunoAdapter.vincula(ListaAlunoAdapter.java:57)
at br.com.edubona.agenda.ui.adapter.ListaAlunoAdapter.getView(ListaAlunoAdapter.java:47)
Depois de ter feito a migration.
Esses são os trechos de código que estão dando erro
@Override
public View getView(int posicao, View view, ViewGroup viewGroup) {
View viewCriada = criaView(viewGroup);
Aluno alunoDevolvido = alunos.get(posicao);
vincula(viewCriada, alunoDevolvido);
return viewCriada;
}
private void vincula(View view, Aluno aluno) {
TextView nomeAluno = view.findViewById(R.id.item_aluno_nome);
nomeAluno.setText(aluno.getNomeCompleto() );
TextView telefoneAluno = view.findViewById(R.id.item_aluno_telefone);
Telefone primeiroTelefone = dao.buscaPrimeiroTelefoneDoAluno(aluno.getId());
telefoneAluno.setText(primeiroTelefone.getNumero());
}
E essa é a classe telefone com o método invocado que está dando erro:
@Entity
public class Telefone {
@PrimaryKey(autoGenerate = true)
private int id;
private String numero;
private TipoTelefone tipo;
@ForeignKey(entity = Aluno.class,
parentColumns = "id",
childColumns = "alunoId",
onUpdate = ForeignKey.CASCADE,
onDelete = ForeignKey.CASCADE)
private int alunoId;
public String getNumero() {
return numero;
}
Eu deletei o emulador e criei outro, o app rodou, porém o erro ocorreu na hora de cadastrar o Aluno. Agora sempre ao abrir o app tenho uma null pointer.