Как мы можем заблокировать ориентацию экрана камеры во время процесса захвата камеры?

Наша камера снимает около 10-15 секунд (из-за нестандартного оборудования камеры). Что мне нужно, так это в течение 10-15 секунд, я бы не хотел, чтобы пользователь изменил ориентацию экрана.

Я поместил вызов takepicture в doInBackground задачи Async.

В методе onPreExecute() я разместил

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);

И в onPostExecute я разместил

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);

Это решение не работает для меня и вызывает сбой камеры и устройства, и мне пришлось перезагрузить устройство.

1 ответ

Решение

Вы пытались заблокировать ориентацию из AndroidManifest? добавив строку ниже в вашей деятельности камеры

<activity android:label="@string/activity_name" android:screenOrientation="portrait" />

или же

<activity android:label="@string/activity_name" android:screenOrientation="landscape" />
Другие вопросы по тегам