Camera2: что означает обработчик в createCaptureSession (List, CameraCaptureSession.StateCallback, Handler)? - PullRequest
0 голосов
/ 13 мая 2018

Я читаю о camera2 API Android и не могу понять, что означает переменная обработчика в следующем запросе?

cameraDevice.createCaptureSession(List, CameraCaptureSession.StateCallback, Handler)

Я просматривал основной код camera2 this class и они установили значение обработчика как ноль при совершении вышеуказанного вызова.Однако в других местах, таких как setRepeatingRequest call или imageReader.setOnImageAvailableListener call, они используют созданный ими backgroundHandler.

Из того, что я понял, созданный backgroundThread (и обработчик) - это тот, гдепроисходит все, что происходит, т.е. сеанс камеры и обратные вызовы.Тогда почему cameraDevice.createCaptureSession не указано это значение?

Заранее спасибо!

1 Ответ

0 голосов
/ 13 мая 2018

Обработчик: обработчик, для которого должен быть вызван обратный вызов, или null для использования петлителя текущего потока.

В примере camera2basic, с использованием текущего(Основной) петлитель для предварительного просмотра CameraCaptureSession достаточно хорош, потому что его обратный вызов не участвует в дорогостоящих задачах и вызывается только один раз.Другие обратные вызовы, которые используют backgroundThread, должны быть запланированы вне основного потока (UI).

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