удаление промежуточного экрана с картинкой - PullRequest
0 голосов
/ 18 мая 2018

Я использую этот метод, чтобы открыть камеру и сделать снимок:

public static void openCamera(Fragment fragment, Uri fileUri) {
      Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
      takePicture.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
      takePicture.putExtra("return-data", true);
      if(takePicture.resolveActivity(fragment.getContext().getPackageManager())!=null){
        granUriPermission(fragment.getContext(), fileUri, takePicture);
        fragment.startActivityForResult(takePicture, Constants.Intents.INTENT_IMAGE_CAMERA);
      }else{
        Toast.makeText(fragment.getContext(), R.string.error_no_camera_app, Toast.LENGTH_SHORT).show();
      }
    }

Сразу после того, как я сделаю снимок, я получаю этот экран, где меня спрашивают, хочу ли я сохранить или удалить снимок, который ятолько что взял:

enter image description here

Что это за экран?

Можно ли принудительно установить ориентацию в альбомном режиме?

Могу ли я удалить этот дополнительный шаг / экран и перейти прямо к моему фрагменту, где я показываю картинку?

1 Ответ

0 голосов
/ 18 мая 2018

Что это за экран?

Похоже, это экран подтверждения.

Можно ли принудительно настроить ориентацию в альбомном режиме?

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

Могу ли я удалить этот дополнительный шаг / экран и перейти прямо к моему фрагменту, где я показываюкартинка?

Наверное, нет.Вы можете связаться с разработчиками этого приложения камеры и спросить их, но их решение будет только для их приложения.Это не поможет вам с сотнями других приложений для камер, с которыми вы можете столкнуться, на ~ 10 000 моделях устройств Android и ~ 2 миллиардах устройств Android.

Если вы хотите получить полный контроль над камерой UX - за платусложности - используйте стороннюю библиотеку камер (например, CameraKit-Android, Fotoapparat), которая оборачивается вокруг собственных API-интерфейсов камеры (например, android.hardware.Camera, android.hardware.camera2.*).

...