видоискатель камеры
В этой таблице перечислены все артефакты в группе androidx.camera-viewfinder
.
Артефакт | Стабильный выпуск | Кандидат на выпуск | Бета-версия | Альфа-релиз |
---|---|---|---|---|
видоискатель-создание | - | - | 1.5.0-бета01 | 1.4.0-альфа13 |
ядро видоискателя | - | - | 1.5.0-бета01 | 1.4.0-альфа13 |
видоискатель-вид | - | - | 1.5.0-бета01 | 1.4.0-альфа13 |
Объявление зависимостей
Чтобы добавить зависимость от камеры-видоискателя, необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .
Добавьте зависимости для нужных вам артефактов в файл build.gradle
для вашего приложения или модуля:
классный
dependencies { // Use to implement camera viewfinders implementation "androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01" implementation "androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01" implementation "androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01" }
Котлин
dependencies { // Use to implement camera viewfinders implementation("androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01") implementation("androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01") implementation("androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.
Дополнительную информацию см. в документации по системе отслеживания проблем .
Версия 1.5
Версия 1.5.0-бета01
7 мая 2025 г.
androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01
, androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01
и androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01
выпущены. Версия 1.5.0-beta01 содержит эти коммиты .
- Это первая официальная бета-версия видоискателей на основе просмотра и композиции, которые достаточно гибки для использования с Camera2. Если вы ищете представление или компоновку для использования с CameraX, см.
PreviewView
иCameraXViewfinder
.
Новые возможности
-
ContentScale
иAlignment
теперь можно использовать в видоискателе на основе композиции для масштабирования и размещения отображаемой поверхности в контейнере, аналогично тому, как ведет себяandroidx.compose.foundation.Image
. ( Ibcea3 )
Изменения API
-
TransformationInfo
теперь имеет значения по умолчанию для всех аргументов. Это позволит создавать видоискатели без какого-либоTransformationInfo
, который по умолчанию будет иметь вращение источника, равное 0, без зеркального отображения источника и без прямоугольника обрезки. ( I2b1b2 ) - Composable Viewfinder теперь использует завершающую лямбду для получения сеанса Surface, аналогично
AndroidExternalSurface
. Предоставленная лямбда-выражение используетViewfinderInitScope
в качестве приемника, что позволяет установить обратный вызов для получения новых сеансов Surface. Эти поверхностные сеансы автоматически освобождают ресурсы, хранящиеся в видоискателе, когда они выходят за пределы области действия. ( Ib2b0d ) -
ViewfinderSurfaceRequest.Builder.populateFromCharacteristics
теперь удален и заменен эквивалентным набором статических API, которые можно использовать для созданияTransformationInfo
, который будет производить то же преобразование, что иpopulateFromCharacteristics
. Эти статические методы добавляются в классCamera2TransformationInfo
. ( Idc6af ) -
ViewfinderSurfaceRequest
больше не включает асинхронные API для получения поверхности. Теперь это неизменяемый тип данных. API для извлечения Surface теперь перенесены в видоискатель. ( I30127 ) -
CameraViewfinder
был переименован вViewfinderView
, чтобы имя соответствовало названию составного видоискателя и чтобы указать, что его можно использовать не только с источниками камеры. ( Id9e6b ) - Классы из
viewfinder-view
были перенесены в подпакетandroidx.camera.viewfinder.view
из пакетаandroidx.camera.viewfinder
. ( I6cb44 ) - В видоискатель на основе просмотра добавлены новые API, которые позволяют настраивать вращение источника, зеркальное отображение и прямоугольник обрезки. Этот класс
TransformationInfo
— это тот же класс, который используется видоискателем на основе композиции. ( I907c3 ) - Видоискатель на основе представлений теперь использует новые API-интерфейсы
ViewfinderSurfaceRequest
, которые больше не обрабатывают ответ Surface внутри себя. Вместо возвратаListenableFuture<Surface>
API-интерфейсыrequestSurfaceSession()
теперь возвращаютListenableFuture<ViewfinderSurfaceSession>
, который возвращает классAutoCloseable
, который при закрытии ведет себя так же, как вызов старого APIViewfinderSurfaceRequest.markSurfaceSafeToRelease()
. Это обеспечивает более четкое разделение ответственности между поверхностным запросом и поверхностным ответом. ( I19041 )
Версия 1.4
Версия 1.4.0-альфа13
26 февраля 2025 г.
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha13
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha13
и androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha13
выпущены. Версия 1.4.0-alpha13 содержит эти коммиты .
Версия 1.4.0-альфа12
15 января 2025 г.
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha12
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha12
и androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha12
выпущены. Версия 1.4.0-alpha12 содержит эти коммиты .
Новые возможности
- Обновлен
compileSdk
до версии 35 для использования API, связанного с Android 15. Приложениям, использующим библиотеки CameraX, также потребуется обновить настройки конфигурацииcompileSdk
. ( Ic80cd ) - Эта библиотека теперь использует аннотации NULL NULL JSpecify , которые являются типизированными. Разработчики Kotlin должны использовать следующий аргумент компилятора для обеспечения правильного использования:
-Xjspecify-annotations=strict
(это значение по умолчанию, начиная с версии 2.1.0 компилятора Kotlin). ( I7bcd7 , б/326456246 )
Версия 1.4.0-альфа11
11 декабря 2024 г.
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha11
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha11
и androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha11
выпущены. Версия 1.4.0-alpha11 содержит эти коммиты .
Изменения API
- Классы
viewfinder-core
были перемещены в пакеты, соответствующие библиотеке, к которой они принадлежат. ( I431c6 ) -
CameraViewfinder.ScaleType
был перенесен вviewfinder-core
чтобы его можно было повторно использовать при составлении ( I87ef1 ). - Устаревшие классы
CameraViewfinder
удалены. Пожалуйста, используйте новые API, которые обеспечивают эквивалентную функциональность. ( I6e59a )
Версия 1.4.0-альфа10
30 октября 2024 г.
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha10
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha10
и androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha10
выпущены. Версия 1.4.0-alpha10 содержит эти коммиты .
Версия 1.4.0-альфа09
2 октября 2024 г.
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha09
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha09
и androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha09
выпущены. Версия 1.4.0-alpha09 содержит эти коммиты .
Версия 1.4.0-альфа08
4 сентября 2024 г.
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha08
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha08
и androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha08
выпущены. Версия 1.4.0-alpha08 содержит эти коммиты .
Новые возможности
С обновлением до 1.4.0-alpha08 артефакт видоискателя CameraX был перенесен в отдельную группу библиотек. Это изменение необходимо для улучшения модульности и удобства обслуживания библиотеки CameraX.
Если ранее вы зависели от androidx.camera:camera-viewfinder
, androidx.camera:camera-viewfinder-compose
или androidx.camera:camera-viewfinder-core
, вам необходимо будет преобразовать ваши зависимости в следующие:
-
androidx.camera:camera-viewfinder
->androidx.camera.viewfinder:viewfinder-view
-
androidx.camera:camera-viewfinder-compose
->androidx.camera.viewfinder:viewfinder-compose
-
androidx.camera:camera-viewfinder-core
->androidx.camera.viewfinder:viewfinder-core
Для осуществления этого перехода не требуется никаких изменений кода. Старые координаты maven Viewfinder больше не будут обновляться.
Кроме того, если вы используете Compose с CameraX, в альфа-версии теперь доступна новая библиотека Compose-first: androidx.camera:camera-compose
. Это обеспечивает возможность компонования CameraXViewfinder
, который представляет собой идиоматический видоискатель с компоновкой, который адаптирует SurfaceRequest
CameraX для Compose, аналогично тому, как PreviewView
работает для представлений.