Я новичок в Android, но я считаю, что вам нужно добавить дополнительную информацию в Intent.
Документация ACTION_IMAGE_CAPTURE гласит:
Вызывающий может передать дополнительный EXTRA_OUTPUT, чтобы указать, где будет записано это изображение. Если EXTRA_OUTPUT отсутствует, то изображение небольшого размера возвращается в качестве растрового объекта в дополнительное поле. Это полезно для приложений, которым нужно только небольшое изображение. Если EXTRA_OUTPUT присутствует, то полноразмерное изображение будет записано в значение Uri EXTRA_OUTPUT.
Итак, я думаю, вы должны добавить в эту строку:
intent.putExtra (MediaStore.EXTRA_OUTPUT, Uri.fromFile (новый файл ("MyImageCapture")));
И тогда вы сможете получить его из URI в onActivityResult.
Но я не проверял это. Надеюсь, я не сбил вас с пути.