Как сделать несколько фотографий, прежде чем уволить камеры? - PullRequest
21 голосов
/ 27 декабря 2011

Я пытаюсь сделать несколько фотографий, используя приложение камеры устройства по умолчанию, запущенное через намерение (MediaStore.ACTION_IMAGE_CAPTURE). На устройствах, которые я тестирую, камера запускается, делает снимок, запрашивает подтверждение, а затем возвращается к моей деятельности, где я обрабатываю результат.

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

Причина, по которой я должен это сделать, заключается в том, что пользователям обычно нужно делать несколько фотографий подряд, а на некоторых устройствах время запуска камеры составляет более 5 секунд, а пользователи, использующие программное обеспечение, делают 10-30 фотографий подряд; не только это, но они должны контролировать различные параметры камеры.

Есть ли способ запустить намерение камеры и вернуться к моей активности только после того, как пользователь выйдет из приложения камеры?

1 Ответ

20 голосов
/ 28 декабря 2011

В документации SDK я обнаружил, что для камеры устройства есть альтернативное намеренное действие, которое запускает камеру в режиме неподвижного изображения и не завершает работу, пока пользователь не завершит действие:

Intent intent = new Intent(
    MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);
this.startActivity(intent);

В сочетании с ContentObserver это было именно то, что мне нужно было сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...