Активировать видеокамеру в фоновом режиме

Я хочу активировать видеокамеру, пока мое приложение находится в фоновом режиме.
Поэтому, чтобы сделать это, я создал сервис, который запускает / останавливает видеокамеру...

Проблема в том, что мне нужно создать SurfaceView в основной деятельности (тот, который вызвал эту службу в моем случае), чтобы setPreviewDisplay, Но когда мое приложение находится в фоновом режиме, я получаю Application lost the surface ОШИБКА.

Я знаю что мне нужна SurfaceView чтобы активировать видеокамеру, но есть ли лучшее решение для активации видеокамеры, когда мое приложение находится в фоновом режиме?

1 ответ

Я не уверен, что полностью понимаю вопрос, но я думаю, что проблема в том, что Service действительно не предназначен для обработки классов, связанных с пользовательским интерфейсом, в отличие от Activity.

Попробуйте упаковать весь код вашей камеры, включая настройку SurfaceView, в Activity. Затем попросите ваш Сервис вызвать действие, запустив Намерение для этого Действия. По сути, все, что делает Служба - это решает, когда нужна камера, и затем запускает Активность.

Я предполагаю, что вы согласны с тем, что предварительный просмотр камеры появится на экране.

Другие вопросы по тегам