拍照问题

Issue taking photo

我必须实现一个允许用户拍照的功能,我需要强制屏幕方向为纵向。

更多 android 设备,尤其是平板电脑,配备了安装在外壳顶部的后置摄像头(纵向模式),其他设备则安装在平板电脑的侧面(横向模式)。

例如:

我需要人像模式下拍的所有照片,下面的代码是我实现的但不起作用。

Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    if (cameraIntent.resolveActivity(getPackageManager()) != null) {
        cameraIntent.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
        File storageDir = new File(Environment.getExternalStorageDirectory() + PDF_FOLDER_C);
        cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photoFile));                                                                  
        startActivityForResult(cameraIntent, idRow);
    }

I need all the photos taken in portrait mode

对于可能以 ACTION_IMAGE_CAPTURE.

启动的数百(如果不是数千)相机应用程序,ACTION_IMAGE_CAPTURE 没有任何东西可以让您强制执行特定方向

欢迎您试用本机相机 API (android.hardware.Cameraandroid.hardware.camera2.*),看看是否可以获得您想要的东西。请记住,欢迎用户以他们想要的任何方向握住他们的设备。