Вопрос по android, java – Как получить URL захваченного изображения?

2

Я запускаю действие для захвата изображения с камеры:

<code>Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE, null);
i.putExtra("return-data", true);
startActivityForResult(i, PICK_FROM_CAMERA);
</code>

Подскажите, пожалуйста, как получить URI снимка?

Ваш Ответ

2   ответа
2

но считаю, что вам нужно добавить дополнительную информацию в Intent. Документация ACTION_IMAGE_CAPTURE гласит:

The caller may pass an extra EXTRA_OUTPUT to control where this image will be written. If the EXTRA_OUTPUT is not present, then a small sized image is returned as a Bitmap object in the extra field. This is useful for applications that only need a small image. If the EXTRA_OUTPUT is present, then the full-sized image will be written to the Uri value of EXTRA_OUTPUT.

Итак, я думаю, вы должны добавить в эту строку:

intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File ("MyImageCapture")));

И тогда вы сможете получить его из URI в onActivityResult.

Но я не проверял это. Надеюсь, я не сбил вас с пути.

Я пробовал это: i.putExtra (MediaStore.EXTRA_OUTPUT, Uri.fromFile (новый файл (& quot; MyImageCapture & quot;))); i.putExtra (& quot; outputFormat & quot ;, Bitmap.CompressFormat.PNG.name ()); startActivityForResult (i, PICK_ICON_FROM_CAMERA_ID); Но мой onActivityResult () никогда не вызывался. Можете ли вы сказать мне любую идею для этого произошло? n179911
1

которое было только что снято с камеры, вы должны сделать следующее

// Call to take the picture
startActivityForResult(new Intent("android.media.action.IMAGE_CAPTURE"), PICK_FROM_CAMERA);

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data)
{
    if (requestCode == PICK_FROM_CAMERA)
    {
        Uri uri = data.getData();
            // set the imageview image via uri 
            _previewImage.setImageURI(uri);
    }
}
Попробовал это на моем телефоне Android 2.2 иdata.getData() возвращает ноль

Похожие вопросы