Какой вид выбрать для предварительного просмотра реального изображения камеры с Kotlin?

Я надеюсь просмотреть реальное изображение камеры мобильного телефона Android в своем приложении.

Я гуглил некоторые ресурсы, кажется, что есть три вида SurfaceView, cameraview и SurfaceTexture из CameraX альфы.

Кажется, что SurfaceView является классическим, cameraview УСТАРЕЛ, а SurfaceTexture из CameraX — это альфа-версия, вы можете увидеть изображение A

Какой вид выбрать для предварительного просмотра реального изображения камеры в Android Studio 3.4.1 с Kotlin? или у вас есть лучшие способы?

Изображение А

введите описание изображения здесь


person HelloCW    schedule 06.07.2019    source источник
comment
Что вы имеете в виду под «настоящим содержанием» камеры? Является ли это отличием от «фальшивого контента» камеры? Что тогда ?   -  person Arthur Attout    schedule 06.07.2019
comment
Я открываю камеру мобильного телефона, снимок, который я сделаю, будет настоящим содержанием.   -  person HelloCW    schedule 07.07.2019
comment
Когда я перемещаю камеру, изображение на экране моего мобильного телефона меняется, поэтому я думаю, что это реальное изображение.   -  person HelloCW    schedule 07.07.2019
comment
Это также означает предварительный просмотр изображения с камеры, изображение будет меняться при перемещении камеры.   -  person HelloCW    schedule 07.07.2019
comment
@HelloCW, вы можете попробовать файловый провайдер с uri, я публикую свой ответ, надеюсь, он вам поможет.   -  person Paraskevas Ntsounos    schedule 08.07.2019
comment
SurfaceView хорош для пользовательской камеры   -  person Sumit Kumawat    schedule 15.07.2019


Ответы (2)


Я думаю, вы могли бы начать с классического пути, а затем, когда camerax будет стабильным, рефакторить и использовать его. Или вы можете использовать его, даже если это альфа, это связано с требованиями вашего проекта. Вы можете проверить реализацию camerax здесь.

Также есть примеры проектов на kotlin и java, а также реализация видео с camerax в gihtub.

В качестве альтернативы можно использовать собственное решение с FileProvider и намерением камеры на основе этой ссылки. Я думаю, что это лучшее решение на данный момент и реализовать camerax в будущем.

person Paraskevas Ntsounos    schedule 08.07.2019

ТекстураВью

Прежде чем задать вопрос, прочтите обучающий документ. https://developer.android.com/training/camerax/preview

person Fung LAM    schedule 15.07.2019