Как пропустить или избежать опции "пересдать и просмотреть" после съемки фотографии с камеры с помощью ACTION_IMAGE_CAPTURE

Я хочу отображать изображение, когда я нажимаю на фотографию и устанавливаю на свое изображение без пользователя, выберите "да" или "нет".

Я больше разбираюсь в этом, и я также очень хорошо знаю, что приложение камеры само по себе дает вам возможность просматривать/воспроизводить изображение, и после того, как изображение будет принято, это отобразит его действие. Но я хочу, не просмотрев/повторить отображение активности...

Я стараюсь использовать этот код

Initilize

  Uri mImageCaptureUri;

Кнопка Click on

  Intent intent      = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
    File file        = new File(Environment.getExternalStorageDirectory(),
            "tmp_avatar_" + String.valueOf(System.currentTimeMillis()) + ".jpg");
    mImageCaptureUri = Uri.fromFile(file);

    try {

        intent.putExtra(MediaStore.AUTHORITY, true);
        intent.putExtra("return-data", true);
        intent.putExtra(MediaStore.EXTRA_OUTPUT, mImageCaptureUri);
        startActivityForResult(intent, PICK_FROM_CAMERA);
    } catch (Exception e) {
        e.printStackTrace();
    }

onActivityResult

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

        Bitmap bitmap = null;


        mPath = mImageCaptureUri.getPath();

        System.out.println("THE PAtH:_" + mPath);

        BitmapFactory.Options o2 = new BitmapFactory.Options();
        bitmap = BitmapFactory.decodeFile(mPath, o2);
        ivSelfie.setImageBitmap(bitmap);


}

Когда я нажимаю на фотографию, чем я. Возьмите этот экран, чтобы выбрать "да" или "нет".

Но мое требование не выбирает задачу просмотра/возврата и прямое задание на ImageView при отображении активности, когда просто нажимают и устанавливают.....

введите описание изображения здесь

Ответ 1

На самом деле довольно полезно иметь подтверждение взятой фотографии. Но, если вы действительно этого не хотите, вам нужно использовать SurfaceView внутри вашего приложения и показать поток камеры здесь. Есть примеры из примера, как это сделать, например, рассмотрим, что один.

Ответ 2

Использовать метод setImageURI() он получит растровое изображение из uri и настроит его для вас.

Да, он установит погоду изображения, которую пользователь нажимает ok или cancel, независимо от того, что ваш файл существует по указанному пути во время запуска.

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

    if (requestCode == PICK_FROM_CAMERA) {
        // only one line code
        ivSelfie.setImageURI(mImageCaptureUri);
  }   
}

Ответ 3

Вы не можете избежать этого экрана. Причина в том, что при использовании нового MediaStore.ACTION_IMAGE_CAPTURE вы используете другое приложение камеры для щелчка изображения. Отображение этого экрана может быть функциональностью по умолчанию. Этот экран будет отличаться на разных устройствах в зависимости от приложения камеры.

Итак, чтобы избавиться от этого, единственное, что вы можете сделать, - это реализовать свою пользовательскую камеру вместо использования приложения камеры по умолчанию.

Ответ 4

В соответствии с приложением камеры по умолчанию вы не можете нарушить эту функциональность. Вместо этого вы можете использовать SurfaceView для захвата изображения внутри вашего приложения. Посмотрите ответ.

Возможно, эта ссылка вам поможет.

Спасибо