如何在相机捕捉过程中锁定相机屏幕方向?

Vel*_*ala 5 android screen-orientation cameracapturetask android-4.2-jelly-bean

我们的相机拍摄需要大约10-15秒(由于自定义相机硬件).我需要的是在10-15秒的这个过程中,我不希望用户改变屏幕方向.

我已将takepicture调用放在Async任务的doInBackground中.

在我放置的onPreExecute()方法中

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);

在onPostExecute我放了

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
Run Code Online (Sandbox Code Playgroud)

此解决方案对我不起作用,导致相机和设备崩溃,我不得不重新启动设备.

小智 2

您是否尝试阻止 AndroidManifest 的方向?通过在您的相机活动中添加以下行

<activity android:label="@string/activity_name" android:screenOrientation="portrait" />
Run Code Online (Sandbox Code Playgroud)

或者

<activity android:label="@string/activity_name" android:screenOrientation="landscape" />
Run Code Online (Sandbox Code Playgroud)