Intención de cámara de Android con Crop
He estado tratando de recortar y cambiar el tamaño de una imagen mientras tomo una foto con la intención de la cámara, pero no entiendo lo que estoy haciendo mal aquí: no puedo obtener los datos de la imagen recortada incluso si el archivo se guarda correctamente en el teléfono
...
public class Add extends Activity {
private String imageFilePath;
...
protected void onCreate(Bundle savedInstanceState) {
...
imageFilePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/tmp/" + String.valueOf(System.currentTimeMillis()) + ".jpg";
imageFile = new File(imageFilePath);
imageFileUri = Uri.fromFile(imageFile);
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, imageFileUri);
intent.putExtra("crop", "true");
intent.putExtra("outputX", 600);
intent.putExtra("outputY", 600);
intent.putExtra("aspectX", 1);
intent.putExtra("aspectY", 1);
intent.putExtra("scale", true);
intent.putExtra("return-data", true);
startActivityForResult(intent, 0);
...
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch(requestCode) {
case 0 : {
Bitmap bitmap = BitmapFactory.decodeFile(imageFilePath);
}
}
}
Si usointent.putExtra("crop", "true");
, imageFilePath
devuelve nulo, si no devuelve el archivo correcto.
¡Gracias por tu ayuda