Очень интересным моментом является получение изображения с камеры по команде «откуда-то». Штатным инструментом работы с камерой является вызов ее приложения. Конечно, это очень неудобно — не позволяет сделать автономное приложение.
Ранее, я приводил примеры, где удается обойти это неудобство. Но, эти расширения — платные.
В очередной раз, пытаясь создать приложение, выполняющее функции фоторегистратора, я наткнулся на бесплатную разработку — расширение Pro Camera.
Я использовал это расширение — все работает! Но на Android 5.1 — не пошло (картинка есть, переключение камеры работает, вспышка — тоже, но фото — не делается). Подключение расширения (его надо скачать с указанной выше страницы):
Пример решения, когда фото делается по таймеру и сохраняется в памяти телефона.
Функция TakePicture вызывается по кнопке на форме или по какому-либо другому событию (у меня от таймера). Для создания файла изображения надо указать путь и имя создаваемого файла (ProCamera1.Output). Можно сделать полноразмерное фото или «превью» (тоже фото, но размерами — поменьше).
Когда файл с фотографией будет создан, случится событие (ProCamera1.SavedPhoto). Сюда можно включить действия, которые что-то с результатом фотографирования сделают (у меня — отправка файла на фотохостинг ImgBB).
Расширение довольно функциональное. Подробно про него написано (с примерами) на указанном выше сайте.