Сделайте снимок автоматически с помощью MediaStore Intent - PullRequest
2 голосов
/ 29 июня 2011

Я хочу сделать снимок одним нажатием кнопки, без запроса какого-либо другого ввода от пользователя.

В настоящее время я использую намерение MediaStore.ACTION_IMAGE_CAPTURE в своей деятельности,который вызывается при нажатии кнопки на виджете.На данный момент открывается предварительный просмотр камеры, позволяющий мне сделать снимок.

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

Я пытался использовать API-интерфейс камеры напрямую, используя класс SurfaceView для захвата изображения и вызова PictureCallback и т. Д.это сработало так, как я хочу, однако качество изображений было очень низким, и я не мог понять, как это изменить.

Так что я думаю, что я ищу ответ на любой из этихдве проблемы, или обе, если кто-то их знает.

Во-первых, существует ли в любом случае что-то похожее на MediaStore.ACTION_IMAGE_CAPTURE, предназначенное для автоматической привязки изображения, не запрашивая пользователя сделать снимок.

Или, во-вторых, как я могу повысить качество и разрешение изображения, полученного непосредственно с помощью Camera API (camera.takePicture(shutterCallback, rawCallback, jpegCallback);и все эти дела).

Любая помощь будет высоко ценится.

1 Ответ

2 голосов
/ 29 июня 2011

Вы пробовали автофокус ?

...