kamera vizörü
Bu tabloda, androidx.camera-viewfinder grubundaki tüm yapılar listelenir.
| Yapı | Kararlı Sürüm | Sürüm Adayı | Beta Sürümü | Alfa Sürümü |
|---|---|---|---|---|
| viewfinder-compose | 1.5.2 | - | - | 1.6.0-alpha02 |
| viewfinder-core | 1.5.2 | - | - | 1.6.0-alpha02 |
| vizör görünümü | 1.5.2 | - | - | 1.6.0-alpha02 |
Bağımlılıkları bildirme
camera-viewfinder'a bağımlılık eklemek için Google Maven deposunu projenize eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.
Uygulamanız veya modülünüz için build.gradle dosyasına ihtiyacınız olan yapılarla ilgili bağımlılıkları ekleyin:
Groovy
dependencies { // Use to implement camera viewfinders implementation "androidx.camera.viewfinder:viewfinder-view:1.6.0-alpha02" implementation "androidx.camera.viewfinder:viewfinder-compose:1.6.0-alpha02" implementation "androidx.camera.viewfinder:viewfinder-core:1.6.0-alpha02" }
Kotlin
dependencies { // Use to implement camera viewfinders implementation("androidx.camera.viewfinder:viewfinder-view:1.6.0-alpha02") implementation("androidx.camera.viewfinder:viewfinder-core:1.6.0-alpha02") implementation("androidx.camera.viewfinder:viewfinder-compose:1.6.0-alpha02") }
Bağımlılıklar hakkında daha fazla bilgi için Derleme bağımlılıkları ekleme başlıklı makaleyi inceleyin.
Geri bildirim
Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmeye yönelik fikirleriniz olursa lütfen bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.
Daha fazla bilgi için Sorun İzleyici belgelerini inceleyin.
Sürüm 1.6
Sürüm 1.6.0-alpha02
17 Aralık 2025
androidx.camera.viewfinder:viewfinder-compose:1.6.0-alpha02, androidx.camera.viewfinder:viewfinder-core:1.6.0-alpha02 ve androidx.camera.viewfinder:viewfinder-view:1.6.0-alpha02 yayınlandı. 1.6.0-alpha02 sürümü bu commit'leri içerir.
Sürüm 1.6.0-alpha01
22 Ekim 2025
androidx.camera.viewfinder:viewfinder-compose:1.6.0-alpha01, androidx.camera.viewfinder:viewfinder-core:1.6.0-alpha01 ve androidx.camera.viewfinder:viewfinder-view:1.6.0-alpha01 yayınlandı. 1.6.0-alpha01 sürümü bu commit'leri içerir.
API Değişiklikleri
- Yeni
ViewfinderDefaults.implementationModeherkese açık API aracılığıyla varsayılan vizörüImplementationModekullanıma sundu. Bu artık hemViewfinderViewhem deViewfindercomposable'ı için varsayılan olarak kullanılmaktadır. (Ic3f52)
Sürüm 1.5
Sürüm 1.5.2
4 Aralık 2025
androidx.camera.viewfinder:viewfinder-compose:1.5.2, androidx.camera.viewfinder:viewfinder-core:1.5.2 ve androidx.camera.viewfinder:viewfinder-view:1.5.2 yayınlandı. 1.5.2 sürümü bu commit'leri içerir.
Sürüm 1.5.1
8 Ekim 2025
androidx.camera.viewfinder:viewfinder-compose:1.5.1, androidx.camera.viewfinder:viewfinder-core:1.5.1 ve androidx.camera.viewfinder:viewfinder-view:1.5.1 yayınlandı. 1.5.1 sürümü şu commit'leri içerir.
Sürüm 1.5.0
10 Eylül 2025
androidx.camera.viewfinder:viewfinder-compose:1.5.0, androidx.camera.viewfinder:viewfinder-core:1.5.0 ve androidx.camera.viewfinder:viewfinder-view:1.5.0 yayınlandı. 1.5.0 sürümü bu commit'leri içerir.
1.4.0 sürümünden beri yapılan önemli değişiklikler:
Bu, sağlam, yaşam döngüsüne duyarlı ve kullanımı kolay View ve Compose tabanlı API'ler sağlayan Kamera Vizörü kitaplığının ilk kararlı sürümüdür. Bu bileşenler, kamera vizörü olarak hizmet vermek üzere tasarlanmıştır ve doğrudan Camera2 ile entegre edilebilir.
Bu sürüm, androidx.camera:camera-compose yapay nesnesi için de temel oluşturur. Bu yapay nesne, CameraXViewfinder adlı yeni bir özellik sunar. Bu özellik, PreviewView'ün View tabanlı düzenlerdeki işleyişine benzer şekilde, CameraX SurfaceRequest ile sorunsuz bir şekilde entegre olan, Compose'a özgü bir vizördür. En önemli değişikliklerden bazıları şunlardır:
- Yapılandırma Taşıma: Modülerliği artırmak için Vizör yapılandırmaları kendi kitaplık grubuna taşındı. Daha önce
androidx.camera:camera-viewfinder*bağımlılıklarını kullanan geliştiricilerandroidx.camera.viewfinder:viewfinder-*'ye geçmelidir. - API Kararlılığı ve İyileştirmeler: API yüzeyi, bu kararlı sürüm için iyileştirildi. Bu kapsamda, çok yönlülüğünü daha iyi yansıtması için
CameraViewfinder,ViewfinderViewolarak yeniden adlandırılıyor, paketler daha anlaşılır şekilde yeniden düzenleniyor ve daha öngörülebilir durum yönetimi içinViewfinderSurfaceRequest, değişmez bir veri türü haline getiriliyor. - Compose API Güncellemeleri: Compose
ViewfinderAPI artık kamera akışının kapsayıcısında nasıl görüntülendiği üzerinde ayrıntılı kontrol içinContentScaleveAlignmentözelliklerini destekliyor. Bu özellikler, standartandroidx.compose.foundation.Imagecomposable'ın davranışını yansıtıyor. - Yüzey yaşam döngüsü yönetimi:
ViewfinderSurfaceSessionartık API 29 ve sonraki sürümlerde yapılandırma değişiklikleri ve yaşam döngüsü etkinlikleri boyunca etkin tutuluyor. Bu değişiklik, bırakılan kare sayısını azaltmak ve daha sorunsuz bir kullanıcı deneyimi sağlamak için tasarlandı. - Varsayılan Uygulama Modları:
Viewfinderartık en iyi temel uygulamayı otomatik olarak seçen akıllı birImplementationModeolarak ayarlanmıştır. Yüksek performanslıSurfaceView(EXTERNALmodu) önceliklendirilir ve eski API düzeylerinde veya uyumluluk sorunları olduğu bilinen cihazlarda daha uyumlu olanTextureView(EMBEDDEDmodu) sorunsuz bir şekilde kullanılır. Bu davranış, geliştiricinin tam kontrolü için geçersiz kılınabilir.
Hata Düzeltmeleri
- Birleştirilebilir
Viewfinderartık Compose'unPageriçinde vemovableContentOf()ile doğru şekilde çalışıyor. Böylece, yüzeyin karmaşık kullanıcı arayüzü senaryolarında düzgün şekilde sıfırlanması ve yönetilmesi sağlanıyor. (I0d9be, I79432) - Android 10 ve 11'de, dönüşümler uygulandığında
SurfaceViewtabanlıViewfinderöğesinin gerilmiş görünmesine neden olan sorun düzeltildi. (Icc77c)
Sürüm 1.5.0-rc01
13 Ağustos 2025
androidx.camera.viewfinder:viewfinder-compose:1.5.0-rc01, androidx.camera.viewfinder:viewfinder-core:1.5.0-rc01 ve androidx.camera.viewfinder:viewfinder-view:1.5.0-rc01 yayınlandı. 1.5.0-rc01 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
- Varsayılan
minSdk'nın API 21'den API 23'e taşınması (Ibdfca, b/380448311, b/435705964, b/435705223)
Sürüm 1.5.0-beta03
16 Temmuz 2025
androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta03, androidx.camera.viewfinder:viewfinder-core:1.5.0-beta03 ve androidx.camera.viewfinder:viewfinder-view:1.5.0-beta03 yayınlandı. 1.5.0-beta03 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
Viewfinder(hem Oluşturma hem de Görüntüleme tabanlı) için varsayılanImplementationModeartıkEXTERNAL(performans için) veEMBEDDED(eski API'lerde/tuhaf cihazlarda uyumluluk için) arasında akıllıca seçim yapıyor. Bu davranış,ViewfinderSurfaceRequestveya XML özelliklerindeki (görüntülemeye dayalı API'de) açık ayarlar tarafından geçersiz kılınabilir. (Iecd3a)- API 29 ve sonraki sürümlerde TextureView veya SurfaceView kullanılırken
ViewfinderSurfaceSessionöğesinin yüzey oluşturma/yok etme yaşam döngüleri boyunca etkin tutulmasına izin vererek Surface oturum yönetimi iyileştirildi. (I112d9) Viewfinderartık, Surfaces'ın her zaman Composable atıldığında değil, yalnızca oturum tarafından kullanılmadığında uygun zamanda yayınlanmasını sağlıyor.EXTERNAL(SurfaceView) için bu davranış şu anda yalnızca API 29 ve sonraki sürümlerde kullanılabilir.EMBEDDED(TextureView) için bu davranış tüm API düzeylerinde mevcuttur. (I9a03f)Viewfinderartık API düzeyi 28 veya daha düşük birEXTERNALvizörünün ekran dışına çıkması ya daViewfinder'nın (herhangi birImplementationModeile)moveableContentOf()'ün parçası olması gibi senaryolarda yüzey değiştirme işlemini düzgün şekilde gerçekleştiriyor. (I79432)- Composable
Viewfinderartık Compose'unPagerile doğru şekilde çalışıyor. Bu değişiklik, hemEMBEDDEDhem deEXTERNALuygulamalarını destekleyenAndroidViewöğesininonResetgeri çağırması uygulanarak Composable'ın başarıyla sıfırlanmasını sağlar. (I0d9be) - Android 10/11'de, dönüşüm işlemleri (ör. ölçeklendirme veya çevirme) çok erken uygulandığı için
EXTERNALViewfinderöğesinin gergin veya yanlış görünmesine neden olan sorun düzeltildi. Sistem artık bu dönüşümleri düzen aşamasında uygulamadan önce Surface'in oluşturulmasını bekleyerek doğru çıkış sağlar. (Icc77c)
Sürüm 1.5.0-beta02
4 Haziran 2025
androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta02, androidx.camera.viewfinder:viewfinder-core:1.5.0-beta02 ve androidx.camera.viewfinder:viewfinder-view:1.5.0-beta02 yayınlandı. 1.5.0-beta02 sürümü bu commit'leri içerir.
Sürüm 1.5.0-beta01
7 Mayıs 2025
androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01, androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01 ve androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01 yayınlandı. 1.5.0-beta01 sürümü bu commit'leri içerir.
- Bu, Camera2 ile kullanılabilecek kadar esnek olan, görüntüleme tabanlı ve oluşturma tabanlı vizörlerin ilk resmi beta sürümüdür. CameraX ile kullanmak için bir View veya composable arıyorsanız
PreviewViewveCameraXViewfindersayfalarına bakın.
Yeni Özellikler
ContentScaleveAlignmentartıkandroidx.compose.foundation.Image'ın davranışına benzer şekilde, görüntülenen yüzeyi kapsayıcısı içinde ölçeklendirmek ve yerleştirmek için beste tabanlı vizörde kullanılabilir. (Ibcea3)
API Değişiklikleri
TransformationInfoartık tüm bağımsız değişkenler için varsayılan değerlere sahip. Bu sayede,TransformationInfoolmadan Viewfinder'lar oluşturulabilir. Bu Viewfinder'lar varsayılan olarak 0 kaynak döndürme, kaynak yansıtma ve kırpma dikdörtgeni içermez. (I2b1b2)- Composable Viewfinder artık
AndroidExternalSurface'ya benzer şekilde bir Surface oturumu almak için sondaki bir lambda'yı kullanıyor. Sağlanan lambda, alıcı olarakViewfinderInitScopekullanır. Bu, yeni Surface oturumlarını almak için geri çağırma yüklemeye olanak tanır. Bu yüzey oturumları, kapsam dışına çıktıklarında Vizör tarafından tutulan kaynakları otomatik olarak serbest bırakır. (Ib2b0d) ViewfinderSurfaceRequest.Builder.populateFromCharacteristicsartık kaldırıldı veTransformationInfooluşturmak için kullanılabilecek eşdeğer bir statik API grubuyla değiştirildi. Bu API grubu,populateFromCharacteristicsile aynı dönüşümü üretir. Bu statik yöntemlerCamera2TransformationInfosınıfına eklenir. (Idc6af)ViewfinderSurfaceRequestartık yüzeyi almak için eşzamansız API'ler içermiyor. Artık değişmez bir veri türüdür. Yüzeyi alma API'leri artık vizöre taşındı. (I30127)CameraViewfinder, adlandırmanın Viewfinder composable'ın adlandırmasıyla uyumlu olması ve yalnızca kamera kaynaklarından daha fazlasıyla kullanılabileceğini belirtmek içinViewfinderViewolarak yeniden adlandırıldı. (Id9e6b)viewfinder-viewpaketindeki sınıflar,androidx.camera.viewfinderpaketindekiandroidx.camera.viewfinder.viewalt paketine taşındı. (I6cb44)- Görüntülemeye dayalı Viewfinder'a, kaynak döndürme, yansıtma ve kırpma dikdörtgenini ayarlamaya olanak tanıyan yeni API'ler eklendi. Bu
TransformationInfosınıfı, compose tabanlı Viewfinder tarafından kullanılan sınıfla aynıdır. (I907c3) - Görünüme dayalı Viewfinder artık
ViewfinderSurfaceRequestAPI'lerini kullanıyor. Bu API'ler, Surface yanıtını dahili olarak işlemeyi durdurdu.ListenableFuture<Surface>döndürmek yerinerequestSurfaceSession()API'leri artıkListenableFuture<ViewfinderSurfaceSession>döndürüyor. Bu da kapatıldığındaViewfinderSurfaceRequest.markSurfaceSafeToRelease()eski API'sini çağırmakla aynı şekilde davranan birAutoCloseablesınıfı döndürüyor. Bu, yüzey isteği ile yüzey yanıtı arasındaki sorumlulukların daha net bir şekilde ayrılmasını sağlar. (I19041)
Sürüm 1.4
Sürüm 1.4.0-alpha13
26 Şubat 2025
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha13, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha13 ve androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha13 yayınlandı. 1.4.0-alpha13 sürümü bu commit'leri içerir.
Sürüm 1.4.0-alpha12
15 Ocak 2025
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha12, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha12 ve androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha12 yayınlandı. 1.4.0-alpha12 sürümü bu commit'leri içerir.
Yeni Özellikler
- Android 15 ile ilgili API'yi kullanmak için
compileSdk, 35 olarak yükseltildi. CameraX kitaplıklarını kullanan uygulamalarıncompileSdkyapılandırma ayarlarını da yükseltmesi gerekir. (Ic80cd) - Bu kitaplık artık tür kullanımı olan JSpecify nullness ek açıklamalarını kullanıyor. Kotlin geliştiricileri, doğru kullanımı zorunlu kılmak için şu derleyici bağımsız değişkenini kullanmalıdır:
-Xjspecify-annotations=strict(Bu, Kotlin derleyicisinin 2.1.0 sürümünden itibaren varsayılan değerdir). (I7bcd7, b/326456246)
Sürüm 1.4.0-alpha11
11 Aralık 2024
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha11, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha11 ve androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha11 yayınlandı. 1.4.0-alpha11 sürümü bu commit'leri içerir.
API Değişiklikleri
viewfinder-coresınıfları, ait oldukları kitaplıkla tutarlı paketlere taşındı. (I431c6)CameraViewfinder.ScaleType, oluşturma ile yeniden kullanılabilmesi içinviewfinder-core'ye taşındı (I87ef1)- Desteği sonlandırılan
CameraViewfindersınıfları kaldırılır. Lütfen eşdeğer işlevler sağlayan yeni API'leri kullanın. (I6e59a)
Sürüm 1.4.0-alpha10
30 Ekim 2024
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha10, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha10 ve androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha10 yayınlandı. 1.4.0-alpha10 sürümü bu commit'leri içerir.
Sürüm 1.4.0-alpha09
2 Ekim 2024
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha09, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha09 ve androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha09 yayınlandı. 1.4.0-alpha09 sürümü bu commit'leri içerir.
Sürüm 1.4.0-alpha08
4 Eylül 2024
androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha08, androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha08 ve androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha08 yayınlandı. 1.4.0-alpha08 sürümü bu commit'leri içerir.
Yeni Özellikler
1.4.0-alpha08 sürümüne yapılan güncellemeyle birlikte CameraX Viewfinder yapısı kendi kitaplık grubuna taşındı. Bu değişiklik, CameraX kitaplığının modülerliğini ve sürdürülebilirliğini artırmak için gereklidir.
Daha önce androidx.camera:camera-viewfinder, androidx.camera:camera-viewfinder-compose veya androidx.camera:camera-viewfinder-core'ye bağlıysanız bağımlılıklarınızı aşağıdakilere geçirmeniz gerekir:
androidx.camera:camera-viewfinder->androidx.camera.viewfinder:viewfinder-viewandroidx.camera:camera-viewfinder-compose->androidx.camera.viewfinder:viewfinder-composeandroidx.camera:camera-viewfinder-core->androidx.camera.viewfinder:viewfinder-core
Bu geçişi yapmak için kod değişikliği yapılması gerekmez. Eski Viewfinder Maven koordinatları artık güncelleme almayacak.
Ayrıca, CameraX ile Compose kullanıyorsanız artık alfa sürümünde yeni bir Compose-first kitaplığı mevcut: androidx.camera:camera-compose. Bu, CameraXViewfinder composable'ı sağlar. Bu composable, PreviewView'ın görünümler için çalışma şekline benzer şekilde, CameraX'in SurfaceRequest composable'ını Compose'a uyarlayan, Compose'a özgü bir Viewfinder'dır.