Я читаю код о Android Camera2 API, здесь: https://github.com/googlesamples/android-Camera2BasicAndroid Camera2 Основы API
И это сбивает с толку в этой линии: https://github.com/googlesamples/android-Camera2Basic/blob/master/Application/src/main/java/com/example/android/camera2basic/Camera2BasicFragment.java#L570-L574
, что строитель previewRequest только добавить поверхность, которая является TextureView, чтобы показать, как цель. Но следующая строка фактически добавляет как цели. Насколько я понимаю, это не должно запускать «OnImageAvailable» Lisenter во время предварительного просмотра, нет? Итак, почему это добавляет поверхность воображения здесь?
Я попытался удалить поверхности этой ImageReader здесь, но получил ошибку, когда я действительно хочу, чтобы захватить изображение .....
SOOO запутывающую !!!
'ImageReader' используется для получения записанных данных изображения для сохранения в файле. И поверхность 'ImageReader' должна быть добавлена к' CaptureSession', прежде чем вы будете использовать 'CaptureRequest.Builder' для захвата изображения в соответствии с [doc] (https://developer.android.com/reference/android/hardware/camera2 /CaptureRequest.Builder.html#addTarget(android.view.Surface)) – calvinfly