Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Problemas ao salvar fotos

Olá, pessoal

Estava com problemas em salvar fotos no emulador do android 7. Quando eu tirava uma foto, assim que eu reiniciava a aplicação, nao estava mais lá. Depois de um tempo, passei a ter problemas com NullPointerException, alegando que existia um caminho de foto mas neste não havia a foto desejada.

Para resolver meu problema, além de tratar o caminhoFoto, tive que tratar o Bitmap tbm:

public void carregaImagem(String caminhoFoto) {
        if(caminhoFoto != null) {
            Bitmap bitmap = BitmapFactory.decodeFile(caminhoFoto);//transformamos nosso arquivo foto em bitmap
            if(bitmap!=null) {
                Bitmap bitmapReduzido = Bitmap.createScaledBitmap(bitmap, 300, 300, true);//ImageView nao consegue guardar fotos com muitas resolucoes, a classe Bitmap tem esse tratamento de reducao
                campoFoto.setImageBitmap(bitmapReduzido);
                campoFoto.setScaleType(ImageView.ScaleType.FIT_XY);//se encaixara na ImageView
                campoFoto.setTag(caminhoFoto);//setTag eh objeto android que anexa tags em Views quaisquer (bottom, ImageView,...)
            }
        }
    }

Mais alguém teve que apelar para isto? Confesso que resolveu tanto a questão do NullPointer quanto também de salvar a imagem correta do aluno dps de reiniciar o simulador.

Gostaria de ajuda pra entender o que ta rolando... parece que o caminho esta salvo no banco mas não a foto.

Outro problema que eu tive tbm, foi tirar uma foto para um aluno e a mesma ser duplicada em outro aluno diferente.

1 resposta
solução!

Opa Natan, acredito que o caminho seja esse mesmo. Isso por que não é garantia que só por que o caminho da imagem foi passado, que a imagem realmente existe e por isso o decoding do arquivo vai ser feito sem problemas. Entende?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software