autorización así que esto aquí es la intención que estoy enviandoonActivityResult regresa con datos = null
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); // create a file to save the image
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name
startActivityForResult(intent, REQUEST_CODE);
Y luego en el onActivityResult estoy haciendo esto:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.i("Intent name:",data.toString());
if (requestCode == REQUEST_CODE){
if (resultCode == Activity.RESULT_OK){
Toast.makeText(this, "Image saved to \n" + fileUri.toString() , Toast.LENGTH_LONG).show();
Toast.makeText(this, "Result Code: " + resultCode , Toast.LENGTH_LONG).show();
//Bitmap mBitMap = BitmapFactory.decodeFile(data.getData().toString());
//imageView.setImageBitmap(mBitMap);
}
else if (resultCode == RESULT_CANCELED){
Toast.makeText(this, "Capture Cancelled", Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(this, "Capture failed", Toast.LENGTH_LONG).show();
}
}
super.onActivityResult(requestCode, resultCode, data);
}
El LogCat está mostrando una NullPointerException en la línea que dice imagen guardada ....
Y también esto:
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=100, result=-1, data=null}
Esto sucede si trato de usar el objeto data
o el campo fileUri
de mi clase.
¿Por qué se devuelven los datos null
?
¿Por qué, aunque estoy usando un campo de la clase, sigo teniendo el mismo error?
No está utilizando getIntent() para acceder al MediaStore.EXTRA_OUTPUT en el Resultado de la actividad –
no. no estoy seguro de cómo usarlo. ¿Me puede dar un fragmento de código? – prometheuspk
intent.putExtra (MediaStore.EXTRA_OUTPUT, fileUri); En Result_OK of Activity use Uri u = data.getData(); para obtener uri También asegúrese de que el archivo Uri no sea el nombre de archivo URI. –