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

Problema

(eu tinha aberto outra dúvida nesse post, mas já resolvi. Porém agora está com problema) Olá! Eu estou utilizando o Android 7.0, realizei as mudanças no código porém ele está dando erro quando eu clico confirmo a foto. Tem uma Stacktrace enorme, não coloquei aqui porque ficaria uma bagunça no post, mas é NullPointerException.

java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=123, result=-1, data=Intent { act=inline-data (has extras) }} to activity {br.com.hudxd.agenda/br.com.hudxd.agenda.FormularioActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference

Segue o código:

OnCreate


Button botaoFoto = (Button) findViewById(R.id.formulario_botao_foto);
        botaoFoto.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intentCamera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                String caminhoFoto = getExternalFilesDir(null) + "/" + System.currentTimeMillis() + ".jpg";

                File arquivoFoto = new File(caminhoFoto);
                intentCamera.putExtra(MediaStore.EXTRA_OUTPUT, FileProvider.getUriForFile(FormularioActivity.this, BuildConfig.APPLICATION_ID + ".provider", arquivoFoto));


                startActivityForResult(intentCamera, CODIGO_CAMERA);  

            }
        });

OnActivityResult

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        if(requestCode == CODIGO_CAMERA && resultCode == Activity.RESULT_OK){ 

            ImageView foto = (ImageView) findViewById(R.id.formulario_foto);
            Bitmap bitmap = BitmapFactory.decodeFile(caminhoFoto);
            Bitmap bitmapReduzido = bitmap.createScaledBitmap(bitmap, 100, 100, true);

            foto.setImageBitmap(bitmapReduzido);
            foto.setTag(caminhoFoto);
        }

    }
1 resposta
solução!

Problema resolvido! Depois de até depurar o aplicativo, eu descobri que no onCreate, eu estava escrevendo String caminhoFoto, sendo que o caminhoFoto é um atributo. Foi no meio do debug que eu vi que o caminhoFoto estava null no onActivityResult. Agora está funcionando certinho \o/

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