visor da câmera
Esta tabela lista todos os artefatos no grupo androidx.camera-viewfinder
.
Artefato | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
viewfinder-compose | - | - | 1.5.0-beta01 | 1.4.0-alpha13 |
viewfinder-core | - | - | 1.5.0-beta01 | 1.4.0-alpha13 |
viewfinder-view | - | - | 1.5.0-beta01 | 1.4.0-alpha13 |
Declarar dependências
Para adicionar uma dependência ao camera-viewfinder, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários ao arquivo build.gradle
do
seu app ou módulo:
Groovy
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" }
Kotlin
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") }
Para mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Versão 1.5
Versão 1.5.0-beta01
7 de maio de 2025
Lançamento de androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01
, androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01
e androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01
. A versão 1.5.0-beta01 contém estas confirmações.
- Esta é a primeira versão Beta oficial dos visores baseados em visualização e em composição que são flexíveis o suficiente para serem usados com a Camera2. Se você estiver procurando uma visualização ou um elemento combinável para usar com a CameraX, consulte
PreviewView
eCameraXViewfinder
.
Novos recursos
ContentScale
eAlignment
agora podem ser usados no visor baseado em composição para dimensionar e posicionar a superfície exibida no contêiner, de forma semelhante ao comportamento deandroidx.compose.foundation.Image
. (Ibcea3).
Mudanças na API
- O
TransformationInfo
agora tem valores padrão para todos os argumentos. Isso permite que os visores sejam criados semTransformationInfo
, que vai usar uma rotação de origem padrão de 0, sem espelhamento de origem e sem retângulo de corte. (I2b1b2). - O visor combinável agora usa uma lambda final para receber uma sessão de superfície, semelhante a
AndroidExternalSurface
. A lambda fornecida usaViewfinderInitScope
como um receptor, o que permite instalar um callback para receber novas sessões da plataforma. Essas sessões de superfície liberam automaticamente os recursos mantidos pelo visor quando saem do escopo. (Ib2b0d). ViewfinderSurfaceRequest.Builder.populateFromCharacteristics
foi removido e substituído por um conjunto equivalente de APIs estáticas que podem ser usadas para gerarTransformationInfo
, que vai produzir a mesma transformação quepopulateFromCharacteristics
. Esses métodos estáticos são adicionados à classeCamera2TransformationInfo
. (Idc6af).ViewfinderSurfaceRequest
não inclui mais APIs assíncronas para recuperar a plataforma. Agora é um tipo de dados imutável. As APIs para recuperar a superfície agora são movidas para o visor. (I30127).CameraViewfinder
foi renomeado comoViewfinderView
para que o nome se alinhe ao nome do elemento combinável do visor e para indicar que ele pode ser usado com mais do que apenas fontes de câmera. (Id9e6b).- As classes de
viewfinder-view
foram movidas para o subpacoteandroidx.camera.viewfinder.view
do pacoteandroidx.camera.viewfinder
. (I6cb44). - Novas APIs foram adicionadas ao Viewfinder baseado em visualização, que permitem definir a rotação da origem, o espelhamento e o retângulo de corte. Essa classe
TransformationInfo
é a mesma usada pelo visor baseado em composição. (I907c3). - O Viewfinder baseado em visualização agora usa novas APIs
ViewfinderSurfaceRequest
, que não processam mais internamente a resposta da plataforma. Em vez de retornarListenableFuture<Surface>
, as APIsrequestSurfaceSession()
agora retornamListenableFuture<ViewfinderSurfaceSession>
, que retorna uma classeAutoCloseable
que, quando fechada, se comporta da mesma forma que a chamada da API antiga deViewfinderSurfaceRequest.markSurfaceSafeToRelease()
. Isso proporciona uma separação mais clara das responsabilidades entre a solicitação e a resposta da superfície. (I19041).
Versão 1.4
Versão 1.4.0-alpha13
26 de fevereiro de 2025
Lançamento de androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha13
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha13
e androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha13
. A versão 1.4.0-alpha13 contém estas confirmações.
Versão 1.4.0-alpha12
15 de janeiro de 2025
Lançamento de androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha12
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha12
e androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha12
. A versão 1.4.0-alpha12 contém estas confirmações.
Novos recursos
- O
compileSdk
foi atualizado para 35 para usar a API relacionada ao Android 15. Os apps que usam as bibliotecas do CameraX também precisam atualizar a configuraçãocompileSdk
. (Ic80cd). - Essa biblioteca agora usa anotações de nulidade JSpecify, que são de uso de tipo. Os desenvolvedores Kotlin precisam usar o seguinte argumento do compilador para aplicar o uso correto:
-Xjspecify-annotations=strict
(este é o padrão a partir da versão 2.1.0 do compilador Kotlin). (I7bcd7, b/326456246).
Versão 1.4.0-alpha11
11 de dezembro de 2024
Lançamento de androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha11
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha11
e androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha11
. A versão 1.4.0-alpha11 contém estas confirmações.
Mudanças na API
- As classes
viewfinder-core
foram movidas para pacotes consistentes com a biblioteca a que pertencem. (I431c6). CameraViewfinder.ScaleType
foi movido paraviewfinder-core
para que possa ser reutilizado com o Compose (I87ef1).- As classes
CameraViewfinder
descontinuadas foram removidas. Use as novas APIs que oferecem funcionalidade equivalente. (I6e59a).
Versão 1.4.0-alpha10
30 de outubro de 2024
Lançamento de androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha10
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha10
e androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha10
. A versão 1.4.0-alpha10 contém estas confirmações.
Versão 1.4.0-alpha09
2 de outubro de 2024
Lançamento de androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha09
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha09
e androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha09
. A versão 1.4.0-alpha09 contém estas confirmações.
Versão 1.4.0-alpha08
4 de setembro de 2024
Lançamento de androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha08
, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha08
e androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha08
. A versão 1.4.0-alpha08 contém estas confirmações.
Novos recursos
Com a atualização para 1.4.0-alpha08, o artefato do visor da CameraX foi movido para o próprio grupo de biblioteca. Essa mudança é necessária para melhorar a modularidade e a manutenção da biblioteca CameraX.
Se você dependia de androidx.camera:camera-viewfinder
, androidx.camera:camera-viewfinder-compose
ou androidx.camera:camera-viewfinder-core
, vai precisar fazer a transição das dependências para o seguinte:
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
Não é preciso mudar o código para fazer essa transição. As coordenadas antigas do Maven do Viewfinder não vão mais receber atualizações.
Além disso, se você estiver usando o Compose com o CameraX, uma nova biblioteca focada no Compose agora está disponível na versão Alfa: androidx.camera:camera-compose
. Isso fornece o elemento combinável CameraXViewfinder
, que é um visor de composição com o estilo do Compose que adapta o SurfaceRequest
do CameraX ao Compose, de forma semelhante ao funcionamento do PreviewView
para visualizações.