KameraX

CameraX, uygulamanıza kamera özellikleri eklemeyi kolaylaştıran bir Jetpack eklentisidir. Kitaplık, geliştirici deneyiminin pek çok cihazda tutarlı olmasına yardımcı olmak için bir dizi uyumluluk düzeltmesi ve geçici çözüm sağlar.

Bu tabloda androidx.camera grubundaki tüm yapılar listelenir.

Yapı Kararlı Sürüm Serbest Bırakma Adayı Beta Sürümü Alfa Sürümü
kamera-kamera2 1.3.3 - - 1.4.0-alfa05
kamera çekirdeği 1.3.3 - - 1.4.0-alfa05
kamera efektleri - - - 1.4.0-alfa05
kamera uzantıları 1.3.3 - - 1.4.0-alfa05
kamera-yaşam döngüsü 1.3.3 - - 1.4.0-alfa05
kamera-mlkit-vision - - 1.3.0-beta02 1.4.0-alfa05
kamera görünümü 1.3.3 - - 1.4.0-alfa05
kamera vizörü - - 1.3.0-beta02 1.4.0-alfa05
kamera-video 1.3.3 - - 1.4.0-alfa05
Bu kitaplık en son 17 Nisan 2024'te güncellendi

Cihaz testi

CameraX, laboratuvarımızda birçok cihazda test edilmiştir. Şu anda laboratuvarda olan cihazların listesini görmek için KameraX laboratuvarda test edilmiş cihazlar bölümüne bakın.

Bağımlılıkları bildirme

CameraX'e bağımlılık eklemek için projenize Google Maven deposunu eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.

Uygulamanızın veya modülünüz için build.gradle dosyasına ihtiyaç duyduğunuz yapıların bağımlılıklarını ekleyin:

Modern

dependencies {
  // CameraX core library using the camera2 implementation
  def camerax_version = "1.4.0-alpha05"
  // The following line is optional, as the core library is included indirectly by camera-camera2
  implementation "androidx.camera:camera-core:${camerax_version}"
  implementation "androidx.camera:camera-camera2:${camerax_version}"
  // If you want to additionally use the CameraX Lifecycle library
  implementation "androidx.camera:camera-lifecycle:${camerax_version}"
  // If you want to additionally use the CameraX VideoCapture library
  implementation "androidx.camera:camera-video:${camerax_version}"
  // If you want to additionally use the CameraX View class
  implementation "androidx.camera:camera-view:${camerax_version}"
  // If you want to additionally add CameraX ML Kit Vision Integration
  implementation "androidx.camera:camera-mlkit-vision:${camerax_version}"
  // If you want to additionally use the CameraX Extensions library
  implementation "androidx.camera:camera-extensions:${camerax_version}"
}

Kotlin

dependencies {
    // CameraX core library using the camera2 implementation
    val camerax_version = "1.4.0-alpha05"
    // The following line is optional, as the core library is included indirectly by camera-camera2
    implementation("androidx.camera:camera-core:${camerax_version}")
    implementation("androidx.camera:camera-camera2:${camerax_version}")
    // If you want to additionally use the CameraX Lifecycle library
    implementation("androidx.camera:camera-lifecycle:${camerax_version}")
    // If you want to additionally use the CameraX VideoCapture library
    implementation("androidx.camera:camera-video:${camerax_version}")
    // If you want to additionally use the CameraX View class
    implementation("androidx.camera:camera-view:${camerax_version}")
    // If you want to additionally add CameraX ML Kit Vision Integration
    implementation("androidx.camera:camera-mlkit-vision:${camerax_version}")
    // If you want to additionally use the CameraX Extensions library
    implementation("androidx.camera:camera-extensions:${camerax_version}")
}

Geri bildirim

Geri bildiriminiz Jetpack'i daha iyi hale getirmemize yardımcı oluyor. Yeni sorunlar keşfederseniz veya bu kitaplığı nasıl geliştirebileceğimizle ilgili fikirleriniz varsa 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.

Yeni sayı oluşturma

Daha fazla bilgi için Sorun İzleyici belgelerine bakın.

Sürüm 1.4

Sürüm 1.4.0-alpha05

17 Nisan 2024

androidx.camera:camera-*:1.4.0-alpha05 yayınlandı. 1.4.0-alpha05 sürümü bu kayıtları içerir.

Yeni Özellikler

  • CameraX veya Camera2 ile kullanmak üzere Composable Vizör ekleme (If79e7)
  • ProcessCameraProvider, Kotlin uygulamasına dönüştürüldü. (I46d4f)
  • Kotlin deyimiyle çağrılabilmesi için ImageCapture.takePicture askıya alma işlevleri eklendi. (I920be)

API Değişiklikleri

  • ImageCapture öğesine çıkış biçimi API'leri ekleyin ve cihaz özelliklerini sorgulamak için ImageCaptureCapabilities öğesine getSupportedOutputFormats yöntemini ekleyin. OUTPUT_FORMAT_JPEG, varsayılan çıkış biçimi değeridir. Bu değer, SDR resimleri JPEG biçiminde yakalar. Cihaz Ultra HDR'yi destekliyorsa ve çıkış biçimi OUTPUT_FORMAT_JPEG_ULTRA_HDR olarak ayarlandığında CameraX, JPEG/R resim biçimini kullanarak Ultra HDR sıkıştırılmış resimler çeker. Biçim, SDR JPEG biçimiyle geriye dönük uyumludur ve içeriğin HDR ile oluşturulmasını destekler. Yani, eski uygulama veya cihazlarda resimler normal JPEG gibi sorunsuz şekilde görünürken, biçimi tam olarak destekleyecek şekilde güncellenmiş uygulama ve cihazlarda resimler HDR olarak görünür. (I5de50)
  • Fiziksel kamera bilgilerini sorgulamak için CameraInfo hesabına PhysicalCameraInfo ekleyin ve CameraSelector bölgesinde fiziksel kamera kimliği belirleyici/alıcı ekleyin (Ic5b90)
  • CameraController#COORDINATE_SYSTEM_VIEW_REFERENCED yerine ImageAnalysis#COORDINATE_SYSTEM_VIEW_REFERENCED kullanın. Sabit değer aynı kalır. Bunun amacı, tüm sabit değerleri tek bir yerde toplamaktır. (I890bb)
  • Yeni RetryPolicy API, geliştiricilerin CameraX'in ilk kullanıma hazırlanması için yeniden deneme davranışını özelleştirmelerini sağlar. (I36dd2)
  • Test edilebilirlik konusunda yardımcı olması için ImageCaptureLatencyEstimate nesnesinin oluşturulmasını etkinleştirin (Iaba99)
  • ImageAnalysis#COORDINATE_SYSTEM_SENSOR ekleyin. Bu kullanıldığında, MlKitAnalyzer, kamera sensörü koordinat sistemindeki koordinatları döndürür. (I3ec61)
  • Açığa çıkan uzantılar meta verisi API'si. Yeni CameraExtensionsInfo ve CameraExtensionsControl arayüzleri, uygulamaların uzantı gücü ayarlarını izlemesine ve düzenlemesine olanak tanır. Uygulamalar CameraExtensionsInfo veya CameraExtensionsControl örneğini yeni eklenen ExtensionsManager#getCameraExtensionsInfo() veya ExtensionsManager#getCameraExtensionsControl() yöntemleriyle alabilir. (I28e1a)
  • ProcessCameraProvider.getInstance (Ib22b9) uygulamasının askıya alma sürümü olan ProcessCameraProvider.awaitInstance eklendi
  • PreviewView#getSensorToViewTransform() API'si ekleyin. Matris, kamera sensörü koordinatlarından PreviewView koordinatlarına geçişi temsil eder. Bu, koordinatları bir UseCase öğesinden diğerine dönüştürmek için kullanılabilir. Örneğin, ImageAnalysis içinde algılanan nesnelerin koordinatlarını PreviewView yer paylaşımına dönüştürme. (I947ab)
  • camera-viewfinder ve camera-viewfinder-compose tarafından kullanılabilmesi için camera-viewfinder-core API'yi daha genel hale getirin. (I1e295)
  • ViewfinderSurfaceRequest öğesine getSurface işlevini ekleyin. (I781a0)
  • camera-viewfinder uygulamasında camera-viewfinder-core kullanın ve ViewfinderSurfaceRequest ile CameraViewfinder özelliklerini kullanımdan kaldırın. (I6198c)
  • Sıkıştırarak yakınlaştırma etkinliği için özel olarak yapılandırılmış ölçeklendirme hareketlerini yorumlayan ZoomGestureDetector eklendi. (Ifafbf)

Hata Düzeltmeleri

  • Analiz aracının varsayılan hedef çözünürlüğü ayarıyla ilgili ImageAnalysis' çözünürlük seçimi sorunu düzeltildi: Uygulamalar farklı bir analiz edici varsayılan çözünürlük ayarı ayarlamış olsa bile hedef çözünürlük yanlış bir şekilde 640x480 olarak tutuluyordu. Uygulamalar bu sorunla karşılaşır (1.3.0 ~ 1.3.2) ve çözümü içeren daha yeni sürümleri kullanmak üzere yükseltme yapamazsa, tercih edilen çözünürlükle bir ResolutionSelector ve ImageAnalysis UseCase ile eşleşen bir AspectRatioStrategy ayarı doğrudan bu sorunu giderebilir. (I81f72, b/330091012)
  • Geçerli istek başarısız olursa sıraya alınan takePicture isteğinin çalıştırılamamasına neden olan sorun düzeltildi. (Ie0801)
  • Geçersiz JPEG veri kontrolünü Vivo X60 ve X60 Pro cihazlara uygulayın. Bu işlem, bu cihazlardaki anormal büyük görüntü sorununu düzeltebilir. (I82247, b/288828159)
  • Samsung A24 cihazlarda yanlış JPEG resim meta verisi sorunu düzeltildi. Düzeltme ile CameraX, JPEG resmini başarıyla kaydedebilir veya Samsung A24 cihazlarda ImageProxy.toBitmap() işlevi çağrılırken doğru Bit Eşlemi nesneleri döndürülebilir. (I8d6eb, b/309005680)
  • Yakalanan görüntü 10 MB'tan büyükse geçersiz JPEG veri kontrolünün tüm Samsung cihazlara uygulanmasını sağlayın. Bu işlem, Samsung cihazlarda anormal derecede büyük görüntü sorununu düzeltebilir. (Ic2a65, b/288828159)
  • Birçok OEM'nin Uzantı uygulamaları ImageAnalysis ile iyi çalışmadığından ve tutarsız sorunlara neden olabileceğinden CameraX Uzantılarında ImageAnalysis desteği kaldırıldı. (I2d926)

Sürüm 1.4.0-alpha04

24 Ocak 2024

androidx.camera:camera-*:1.4.0-alpha04 yayınlandı. Sürüm 1.4.0-alpha04 bu kayıtları içerir.

Yeni Özellikler

  • Yeni yapı: kamera efektleri: CameraX çıkışına gerçek zamanlı efektler uygulamak için Preview, VideoCapture ve/veya ImageCapture dahil bir kitaplık. Bu yapı, kamera çıkışını verimli bir şekilde değiştiren CameraEffect API'sinin OpenGL uygulamalarını içerir.
  • OverlayEffect: Android'in Canvas API'siyle yer paylaşımlı çizimler için. Bu izin, uygulamanın kamera çıkışlarında algılanan nesneleri vurgulamasına veya filigran uygulamasına olanak tanır.
  • DynamicRange Önizleme Kullanım Alanı için API'ler: Dinamik aralık artık Video Kullanım Alanı'ndan bağımsız olarak Önizleme Kullanım Alanı'nda ayarlanabilir. Bu, yalnızca Önizleme için HLG10 gibi HDR dinamik aralıklarına izin verir. Her kameranın hangi dinamik aralıkları desteklediğini sorgulamak için CameraInfo ürününde yeni API'ler de mevcuttur.

API Değişiklikleri

  • ScreenFlashUiCompleter öğesi ScreenFlashListener olarak yeniden adlandırıldı ve ScreenFlashUiCompleter#getExpirationTimeMillis parametresi ScreenFlash#apply öğesinin expirationTimeMillis parametresine taşındı. (I13944)
  • Önizleme kullanım alanında dinamik aralığın ayarlanmasına ve her kamera tarafından desteklenen dinamik aralıkların sorgulanmasına olanak tanımak için yeni API'ler eklendi. Bu, HLG10 gibi HDR dinamik aralıklarının yalnızca Önizleme kullanım alanıyla kullanılmasına olanak tanır ve artık aynı anda bir VideoCapture öğesinin bağlanmasına gerek kalmaz. (If25e3)
  • getMirroring() adlı odanın adı isMirroring() (I47063) olarak değiştirildi
  • CameraX'e Gerçek zamanlı yakalama gecikme tahmini desteği eklendi. Kamera uzantıları sayesinde uygulamalar, yakalama işleminin ne kadar süreceğini tahmin eden bir API kullanabilir. Tahmin mevcut ortam koşulları ile kamera durumunu dikkate alır, çok kareli çekim isteklerinin işlenmesi için harcanan süre ile gerekirse işlenen arabellekleri kodlamak için gereken ek süreyi içerir. (I05c3a)
  • ScreenFlashUiControl öğesi ScreenFlash, ScreenFlashUiControl#applyScreenFlashUi, ScreenFlash#apply, ScreenFlashUiControl#clearScreenFlashUi adı ScreenFlash#clear olarak yeniden adlandırıldı ve SCREEN_FLASH_UI_APPLY_TIMEOUT_SECONDS öğesinin doğrudan gösterilmesi yerine getScreenFlashUiApplyTimeoutSeconds yöntemi eklendi. (Iccdd0)

Hata Düzeltmeleri

  • Uzantılar etkinleştirildiğinde etkinliklerin veya parçaların serbest bırakılmamasına neden olan bir bellek sızıntısı düzeltildi (I14215)
  • Artan bir yakınlaştırma oranı uygulanırken getZoomRatio ürününün yanlış bir şekilde azaltılmış bir değer döndürmesi sorunu düzeltildi. (I4aa0d, b/317543616)
  • ImageCapture#ScreenFlash#clear etkinliği, ImageCapture bağlantısı kesildiğinde veya kamera kapatıldığında hemen çağrılır. Ayrıca, bu senaryolardaki yakalamaların doğru bir şekilde tamamlanmaması nedeniyle hiçbir zaman çağrılmadığı bazı hataları düzeltir. (If99f9)
  • takePicture isteği tamamlanmadan yaşam döngüsü durdurulduğunda meydana gelen kilitlenme düzeltildi (Idf017, b/306202751)
  • Bazı cihazlarda Uzantılar etkinleştirildiğinde kamera önizlemesinin siyah olması sorunu düzeltildi (I1ffd0)
  • Snapdragon 778G SoC kullanan cihazlarda yanlış video kayıt süresi düzeltildi. (If6aa7, b/316057919)

Sürüm 1.4.0-alpha03

13 Aralık 2023

androidx.camera:camera-*:1.4.0-alpha03 yayınlandı. Sürüm 1.4.0-alpha03 bu kayıtları içerir.

Yeni Özellikler

  • Deklanşör sesinin bölgesel kısıtlamalara uygun olarak çalınıp çalınmayacağına dair bilgi sağlamak için CameraInfo.mustPlayShutterSound eklendi. (Ifda84)
  • Kamera bir kareyi göstermeye başladığında bilgilendirme için OnImageCapturedCallback.onCaptureStarted ve OnImageSavedCallback.onCaptureStarted eklendi. Bu noktada deklanşör sesinin veya deklanşör animasyonunun oynatılması önerilir. (Ic49b3)
  • Ön kamera görüntüsü yakalama için CameraX'e Ekran Flash'ı özelliği desteği eklendi. CameraX, çerçeve tarafındaki API'ların işlenmesiyle ilgilenir ve zamanlamayı gerektiğinde uygulamanın kullanıcı arayüzü değişiklikleriyle senkronize eder (ör. uygulama ekranının rengi/parlaklığı değişikliğinden sonra AE erken çekim tetikleyicisi). Uygulamaların yalnızca CameraX'e sağlanan ScreenFlashUiControl arayüzüne, kullanıcı arayüzü yan uygulamalarını eklemeleri gerekecektir. (I8ae84)
  • CameraX'e Ekran Flash özelliği kullanıcı arayüzü tarafı uygulama desteği eklendi. Uygulamalar, PreviewView veya yeni eklenen ScreenFlashView ürününden temel bir ImageCapture.ScreenFlashUiControl uygulaması alabilecek. Bu uygulama, tek renkli yer paylaşımı görünümü ekler ve ekran yanıp sönen fotoğraf çekimi sırasında ekran parlaklığını en üst düzeye çıkarır. (I1810e)

API Değişiklikleri

  • Yeni Uzantılar özelliklerini(görüntüleme sonrası ve yakalama işleminin ilerleme durumu) destekler: Uygulamalar için görüntüleme sonrası özelliklerini sorgulamak ve işlem ilerleme durumunu geri çağırmayı yakalamak üzere ImageCapture#getImageCaptureCapabilities() API'leri eklendi. Uygulamalar, ImageCapture.Builder#setPostviewEnabled() özelliğini kullanarak görüntüleme sonrası özelliğini etkinleştirebilir. Görüntüleme sonrası boyutu, ImageCapture.Builder#setPostviewResolutionSelector() ile seçilebilir. takePicture() çağrılırken, görüntüleme sonrası görüntüleme ve destekleniyorsa işlem ilerleme durumu bildirimini almak için OnImageSavedCallback veya OnImageCapturedCallback içinde onPostviewBitmapAvailable ve onCaptureProcessProgressed uygulanabilir. (I5cd88)
  • Sensörden mevcut arabelleğe koordinat dönüşümünü hesaplamak için kullanılan API'lerde, Yüzey'in kamera yönü bilgisini içerip içermediğini gösteren bir işaret gösterilir. (I59096)
  • UseCase Önizlemesi'nde API'yi PreviewCapabitlity sorgusuna sunun. (Ie5b6c)
  • VideoCapture için daha fazla özelliği desteklemek üzere API'ler eklendi. Recorder.Builder#setVideoCapabilitiesSource(int), VIDEO_CAPABILITIES_SOURCE_CAMCORDER_PROFILE ile karşılaştırıldığında daha fazla özelliği destekleyen bir Recorder örneği oluşturmak için VIDEO_CAPABILITIES_SOURCE_CODEC_CAPABILITIES ile kullanılabilir. Yaygın bir kullanım durumu da uygulamanın, mümkün olduğunda UHD video kaydetmeye çalışması ancak codec'in UHD video kaydetme özelliğine sahip olmasına rağmen cihazın CamcorderProfile özelliğinin UHD ayarları içermemesidir. (Iedbe2, b/263961771)
  • CameraController için ImageAnalysis çıkış biçimi alıcısı/ayarlayıcı ekleyin. (I9a96c, b/308240643)

Hata Düzeltmeleri

  • Başlangıç Kamera 1.3.1: ProcessCameraProvider#bindToLifecycle() performansı iyileştirildi. Önemli değişiklik, UseCases için en uygun boyut kombinasyonlarını belirleme sürecini optimize etmektir. En iyi sonuçlar, hedef cihazlar için belirli UseCase kombinasyonlarına ve desteklenen çıktı boyutlarının sayısına göre değişiklik gösterir. (I454f2)
  • Uzantılar etkinleştirildiğinde VideoCapture kullanımına izin ver. (I91f32)
  • Samsung A71 ve M51 serisi cihazlarda büyük yakalanmış JPEG görüntüsü sorunu düzeltildi. Yakalanan JPEG resimleri, JFIF sıkıştırılmış veri segmentinde gereksiz 0 dolgu verileri içeriyor. Yakalanan görüntülerin aşırı dosya boyutlarına sahip olmasına neden olur. Bu fazladan 0'ın dolgu verileri, yakalanan resimlerin normal resim dosyası boyutlarına sahip olmasını sağlamak için kaldırılır. (I01afc, b/288828159)
  • Pixel'de, boş olmayan ImageAnalysis tarafından desteklenen boyutları yanlışlıkla döndüren hatadan kaçınmak için Pixel'de ImageAnalysis desteğini devre dışı bırakın. (I7ec31)
  • Uzantılar etkinleştirildiğinde CPU yüklemesi ve güç tüketiminin artmasıyla ilgili performans sorunu düzeltildi. (Ibdccb)
  • CameraUseInconsistentTimebaseQuirk uygulamasına Snapdragon 480 eklendi. Android 12'de bu yonga setini kullanan cihazlarda yaşanan ve kayıtlardaki sesin, cihazın askıya alınmış durumda olduğu süreye göre dengelenmesi sorunu düzeltilir. (I58010)

Sürüm 1.4.0-alpha02

18 Ekim 2023

androidx.camera:camera-*:1.4.0-alpha02 yayınlandı. Sürüm 1.4.0-alpha02 bu kayıtları içerir.

API Değişiklikleri

  • API'yi setCameraOpenRetryMaxTimeoutInMillisWhileResuming olarak yeniden adlandırın ve bağımsız değişkeni yeniden adlandırın. (I72370)
  • Cihaz işlevini sorgulamak ve video/önizleme sabitlemesini etkinleştirmek için API'ler ekleme. (I87544)
  • Kamera açılışını yeniden deneme maksimum zaman aşımı süresini özelleştirmek için API sağlayın. (I0c642)
  • Süreç kamerası sağlayıcısının, testler arasında CameraX'i farklı şekillerde başlatması gerekebilecek test paketlerinde kullanılmasına olanak tanımak için ProcessCameraProvider.shutdownAsync, herkese açık bir test API'si olarak yayınlandı. (I9eca7)
  • Video yakalama dinamik aralığını, kare hızını ve yansıtma modunu yapılandırmak için API'ler ekleyin. (Ifb8f7)
  • OutputSize öğesini kullanımdan kaldırın ve ResolutionSelector ile değiştirin. ResolutionSelector, çözünürlükleri seçmenin daha kapsamlı bir yoludur ve kamera çekirdeği API'si ile tutarlıdır. (I93abd, b/286801438)

Hata Düzeltmeleri

  • Arka kamerada ImageAnalysis ile uzantı Bokeh veya Yüz Rötuşları etkinleştirildiğinde Samsung Galaxy S23 Ultra 5G'deki siyah önizleme sorunu düzeltildi. (I2e8b1)
  • Moto E5 Play'deki Önizleme ve VideoCapture sorunları giderildi. (73dce2)

Sürüm 1.4.0-alpha01

20 Eylül 2023

androidx.camera:camera-*:1.4.0-alpha01 yayınlandı. Sürüm 1.4.0-alpha01 bu kayıtları içerir.

API Değişiklikleri

  • Kayıt sırasında ses genliği bilgilerine erişmek için yeni API ekleyin. (Id4925)

Hata Düzeltmeleri

  • Başlatma ve ilk kullanıma hazırlama etkinliklerinin doğru sırayla tetiklenmesini sağlayarak Uzantıların kararlılığını iyileştirin. (Ib3b8e)
  • Dahili olarak fazladan tekrarlama yüzeyi eklenmesinden kaynaklanan, desteklenen yüzey kombinasyonunun aşılması nedeniyle yakalanan oturum yapılandırması hatası düzeltildi. (Id718c)
  • Vivo S16 cihazda büyük boyutlu yakalanmış JPEG görüntüsü sorunu düzeltildi. Yakalanan JPEG resimleri, JFIF sıkıştırılmış veri segmentinde gereksiz 0 dolgu verileri içeriyor. Yakalanan görüntülerin dosya boyutunun büyük olmasına neden olur. Bu fazladan 0'ın dolgu verileri, yakalanan resimlerin normal resim dosyası boyutlarına sahip olmasını sağlamak için kaldırılır. (I79505, b/299069235)
  • Bazı cihazlarda bazı uzantı modları etkinleştirildiğinde ImageAnalysis ürününün ImageCapture ve Önizleme ile birbirine bağlanamaması sorunu düzeltildi. Uygulamalar, ImageAnalysis müsaitlik durumunu ExtensionsManager#isImageAnalysisSupported() üzerinden sorguladığında düzeltme doğru değeri döndürür. (I7d538)
  • JavaDoc'u davranışla eşleşecek şekilde güncelleyin. #setZoomRatio, #setLinearZoom ve #enableTorch, anında tamamlamak yerine kamera hazır olana kadar bekler. Ayrıca, #takePicture API ile maksimum görüş mesafesinin nasıl alınacağıyla ilgili bilgiler de eklendi. (I23588)

Sürüm 1.3

Sürüm 1.3.3

17 Nisan 2024

androidx.camera:camera-*:1.3.3 yayınlandı. 1.3.3 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Analiz aracının varsayılan hedef çözünürlüğü ayarıyla ilgili ImageAnalysis' çözünürlük seçimi sorunu düzeltildi: Uygulamalar farklı bir analiz edici varsayılan çözünürlük ayarı ayarlamış olsa bile hedef çözünürlük yanlış bir şekilde 640x480 olarak tutuluyordu. Uygulamalar bu sorunla karşılaşır (1.3.0 ~ 1.3.2) ve çözümü içeren daha yeni sürümleri kullanmak üzere yükseltme yapamazsa, tercih edilen çözümle bir ResolutionSelector ve ImageAnalysis UseCase ile eşleşen bir AspectRatioStrategy değeri doğrudan ayarlamak bu sorunu çözebilir. (I81f72, b/330091012)

Sürüm 1.3.2

6 Mart 2024

androidx.camera:camera-*:1.3.2 yayınlandı. 1.3.2 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Samsung A24 cihazlarda JPEG meta veri sorunu düzeltildi. CameraX artık resimleri doğru kaydediyor ve ImageProxy.toBitmap() işlevi doğru Bit eşlem nesnelerini döndürüyor. (I8d6eb, b/309005680)
  • Redmi Note 9 Pro cihazlarda sorunlar nedeniyle 9280x6944 çözünürlük seçeneği kaldırıldı. (Ia23da)

Sürüm 1.3.1

13 Aralık 2023

androidx.camera:camera-*:1.3.1 yayınlandı. 1.3.1 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

ProcessCameraProvider#bindToLifecycle() performansı iyileştirildi. Önemli değişiklik, UseCases için en uygun boyut kombinasyonlarını belirleme sürecini optimize etmektir. En iyi sonuçlar, hedef cihazlar için belirli UseCase kombinasyonlarına ve desteklenen çıktı boyutlarının sayısına göre değişiklik gösterir. (I454f2)

Çeşitli senaryolara ait bazı referans sonuçları aşağıda verilmiştir:

  • Dört UseCases: Preview + ImageCapture + ImageAnalysis + VideoCapture

    • Google Pixel 7: Yaklaşık 430 ms - 60 ms
    • Samsung Galaxy S23 Ultra: Yaklaşık 540 ms - 45 ms
    • Samsung A53 5G: Yaklaşık 115 ms - 70 ms
  • Üç UseCases: Preview + ImageCapture + ImageAnalysis

    • Google Pixel 7: Yaklaşık 9 ms - 7 ms
    • Samsung Galaxy S23 Ultra: Yaklaşık 6 ms - 5 ms
    • Samsung A53 5G: Yaklaşık 32 ms - 12 ms
  • CameraUseInconsistentTimebaseQuirk uygulamasına Snapdragon 480 eklendi. Android 12'de bu yonga setini kullanan cihazlarda yaşanan ve kayıtlardaki sesin, cihazın askıya alınmış durumda olduğu süreye göre dengelenmesi sorunu düzeltilir. (I58010)

Sürüm 1.3.0

18 Ekim 2023

androidx.camera:camera-*:1.3.0 yayınlandı. 1.3.0 sürümü bu kayıtları içerir.

1.2.0'dan sonraki önemli değişiklikler

Sürüm 1.3.0-rc02

20 Eylül 2023

androidx.camera:camera-*:1.3.0-rc02 yayınlandı. 1.3.0-rc02 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Başlatma ve ilk kullanıma hazırlama etkinliklerinin doğru sırayla tetiklenmesini sağlayarak Uzantıların kararlılığını iyileştirin. Bu, Uzantı modlarını değiştirirken veya kamera değiştirirken karşılaşılan bazı siyah önizleme sorunlarını düzeltti. (Iddaac)
  • Bazı cihazlarda bazı uzantı modları etkinleştirildiğinde ImageAnalysis ürününün ImageCapture ve Önizleme ile birbirine bağlanamaması sorunu düzeltildi. Uygulamalar, ImageAnalysis müsaitlik durumunu ExtensionsManager#isImageAnalysisSupported() üzerinden sorguladığında düzeltme doğru değeri döndürür. (I7d538)
  • Xiaomi Poco X3 NFC'de yansıtma modu etkinken kaydedilen videodaki sesin ve görüntünün senkronize olmaması sorunu düzeltildi. (I20b4c)

Sürüm 1.3.0-rc01

23 Ağustos 2023

androidx.camera:camera-*:1.3.0-rc01 yayınlandı. 1.3.0-rc01 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Kaydedici'nin bağlı olduğu VideoCapture ribaund sırasında kaydın sürekli olarak kayıt yapmasına izin vermek için PendingRecording.asPersistentRecording eklendi. (I517c6)

Hata Düzeltmeleri

  • Bir akış hem VideoCapture hem de Önizleme ile paylaşıldığında meydana gelen kilitlenme düzeltildi. Ayrıca, akış paylaşımı etkinleştirildiğinde ESKİ cihazlarda siyah ekran düzeltildi.
  • Samsung S7 (SM-G930T, SM-G930V) serisi cihazlarda büyük yakalanmış JPEG görüntüsü sorunu düzeltildi. Yakalanan JPEG resimleri, JFIF sıkıştırılmış veri segmentinde gereksiz 0 dolgu verileri içeriyor. Yakalanan görüntülerin dosya boyutunun büyük olmasına neden olur. Bu fazladan 0'ın dolgu verileri, yakalanan resimlerin normal resim dosyası boyutlarına sahip olmasını sağlamak için kaldırılır. (I407b0, b/288828159)
  • Samsung S22 (SM-S901B, SM-S901B/DS) ve S22+ (SM-S906B) serisi cihazlarda yakalanan büyük boyutlu JPEG görüntüsü sorunu düzeltildi. Yakalanan JPEG resimleri, JFIF sıkıştırılmış veri segmentinde gereksiz 0 dolgu verileri içeriyor. Bu, yakalanan görüntülerin, S22 SM-S901B/DS cihazında yaklaşık 13 MB büyüklükte dosya boyutuna sahip olmasına neden olur. Bu fazladan 0'ın dolgu verileri, yakalanan resimlerin normal resim dosyası boyutlarına sahip olmasını sağlamak için kaldırılır. (I73be9, b/288828159)
  • Samsung A5, A52, A70 ve A72 serisi cihazlarda büyük boyutlu yakalanmış JPEG görüntüsü sorunu düzeltildi. Yakalanan JPEG resimleri, JFIF sıkıştırılmış veri segmentinde gereksiz 0 dolgu verileri içeriyor. Yakalanan görüntülerin aşırı dosya boyutuna sahip olmasına neden olur (ör. yaklaşık 32 MB, hatta 96 MB). Bu fazladan 0'ın dolgu verileri, yakalanan resimlerin normal resim dosyası boyutlarına sahip olmasını sağlamak için kaldırılır. (I97c4d, b/288828159)
  • Uzantılar etkinken resim çekerken yaşanan yerel kilitlenme düzeltildi (I698f5)

Sürüm 1.3.0-beta02

26 Temmuz 2023

androidx.camera:camera-*:1.3.0-beta02 yayınlandı. 1.3.0-beta02 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Düşük ışıkta çekim kalitesini artırmak için Pixel 4 ve 5 modellerinde flaş olarak flaş kullanın (I56ff5, b/280221967)
  • Samsung A5 (2017) serisi cihazlarda büyük boyutlu yakalanmış JPEG görüntüsü sorunu düzeltildi. Yakalanan JPEG resimleri, JFIF sıkıştırılmış veri segmentinde gereksiz 0 dolgu verileri içeriyor. Bu, yakalanan görüntülerin dosya boyutunun yaklaşık 32 MB olmasını sağlar. Bu fazladan 0'ın dolgu verileri, yakalanan resimlerin normal resim dosyası boyutlarına sahip olmasını sağlamak için kaldırılır. (I29837, b/288828159)
  • CaptureFailedRetryQuirk dokümanında bahsedilen sorunlu cihazlarda yakalama hatası olması durumunda yeniden deneme işleminin düzgün şekilde tetiklenmemesi düzeltildi. (I7b589)

Sürüm 1.3.0-beta01

21 Haziran 2023

androidx.camera:camera-*:1.3.0-beta01 yayınlandı. 1.3.0-beta01 sürümü bu kayıtları içerir.

API Değişiklikleri

  • ResolutionSelector.Builder#setHighResolutionEnabledFlag(int) işlev adı setAllowedResolutionMode, ResolutionSelector#HIGH_RESOLUTION_FLAG_OFF/ON sabit değerleri ise PREFER_CAPTURE_RATE_OVER_HIGHER_RESOLUTION/PREFER_HIGHER_RESOLUTION_OVER_CAPTURE_RATE olarak yeniden adlandırıldı. (If84e8)
  • Kullanımdan kaldırılan API ImageAnalysis.setTargetRotationDegrees(int), ImageCapture.setTargetRotationDegrees(int) ve VideoCapture.setTargetRotationDegrees(int) kaldırıldı. (Id8e77)
  • DynamicRange sınıfı, resimlerin dinamik aralığını temsil eder. Bu, VideoCapture-VideoCapture.Builder#setDynamicRange() arasındaki çıkış olarak Yüksek Dinamik Aralık biçimlerini seçmek için kullanılabilir. (Ib0377)
  • Uzantılar etkinleştirildiğinde ExtensionsManager öğesine, uygulamaların bir ImageAnalysis kullanım alanının Önizleme ve ImageCapture ile bağlanıp bağlanmayacağını belirleyebilecek bir isImageAnalysisSupported API'si eklendi. (I1bc63)
  • Recorder öğesinden alınan yeni VideoCapabilities sınıfı, cihazda video kaydında desteklenen dinamik aralıkları ve kaliteleri sorgulamak için kullanılabilir. QualitySelector uygulamasının getSupportedQualities() ve isQualitySupported() yöntemleri kullanımdan kaldırılıyor. Bunun yerine lütfen VideoCapabilities getSupportedQualities() ve isQualitySupported() yöntemlerini kullanın. (I04014)
  • CameraController#setVideoCaptureTargetQuality(), setVideoCaptureQualitySelector olarak yeniden adlandırıldı ve video kalitesi ayarları için daha fazla esneklik sağlayan QualitySelector bağımsız değişkenini kullanıyor. CameraController#getVideoCaptureTargetQuality() buna göre getVideoCaptureQualitySelector olarak değiştirilir. (I520ed)
  • Video özellikleri için deneysel ek açıklama kaldırıldı. Video özellikleri artık kararlı. (I1a113)

Hata Düzeltmeleri

  • Samsung SM-A320 modellerinde flaş olarak flaş kullanarak hem hızı hem de düşük ışıkta çekilen görüntü kalitesini iyileştirin. (I6a022, b/286190938)
  • ImageProxy.toBitmap() için ImageFormat.JPEG biçimi desteği ekleyin. JPEG bayt dizisinin kodu çözülemezse UnsupportedOperationException hatası verilir. (I81958, b/282057603)

Sürüm 1.3.0-alpha07

24 Mayıs 2023

androidx.camera:camera-*:1.3.0-alpha07 yayınlandı. Sürüm 1.3.0-alpha07 bu kayıtları içerir.

Yeni Özellikler

  • Yeni VideoCapture.Builder# setTargetFrameRate(Range) API, video kayıtlarının cihaz varsayılanının yanı sıra diğer kare hızlarında yakalanmasını sağlar. Kayıtlar için kullanılabilen kare hızları yeni CameraInfo#getSupportedFrameRates() API aracılığıyla sorgulanabilir.

API Değişiklikleri

  • ResolutionSelector#HIGH_RESOLUTION_FLAG_OFF/ON sabitleri, ALLOWED_RESOLUTIONS_NORMAL/SLOW olarak ve oluşturucu setHighResolutionEnabledFlag işlevinin adı setAllowedResolutionMode olarak yeniden adlandırıldı. (Iae817)
  • CameraInfo#getSupportedFrameRateRanges() artık aralıkların sıralanmadığını daha iyi göstermek için List yerine Set değerini döndürüyor. (I02f43)
  • Düzeltilemeyen hataları işlemek için CameraEffect öğesine bir hata işleyici ekleyin (Ice471)
  • Daha iyi test edilebilirlik için ResolutionInfo öğesine genel oluşturucu ekleyin (If6d1c)
  • setTargetRotationDegrees API'sinin yerini alması ve ImageAnalysis.setTargetRotationDegrees(int), ImageCapture.setTargetRotationDegrees(int) ile VideoCapture.setTargetRotationDegrees(int) API'lerinin kullanımdan kaldırılması için UseCase.snapToSurfaceRotation(int) API'si sağlandı. (Ia9010)
  • Önizleme kullanım alanı (If4f22) için hedef kare hızını ayarlayabilmek ve almak amacıyla yeni API Preview#getTargetFrameRate ve Preview.Builder#setTargetFrameRate API'leri eklendi
  • Recording nesnesi çöp toplama nedeniyle durdurulduğunda VideoRecordEvent.Finalize artık ERROR_RECORDING_GARBAGE_COLLECTED hata koduyla tamamlanacak. (Iba974)

Hata Düzeltmeleri

  • StreamConfigurationMapCompat içinde önbelleğe alınan çıkış boyutları null olduğunda NullPointerException düzeltildi. (Idf124, b/282025204)
  • Preview.setSurfaceProvider(null) ürününün Uzantılar'da (Ia903e) önizlemeyi duraklatmaması sorunu düzeltildi
  • VideoCapture bağlıyken kamera açılırken ConcurrentModificationException titreşmesi sorunu düzeltildi. (Ic8ac4)

Sürüm 1.3.0-alpha06

19 Nisan 2023

androidx.camera:camera-*:1.3.0-alpha06 yayınlandı. Sürüm 1.3.0-alpha06 bu kayıtları içerir.

Yeni Özellikler

  • Eşzamanlı kamera, Android 11'de kullanıma sunulan ve kamera cihazlarının eş zamanlı akışını destekleyen yeni bir özelliktir. Örneğin, bir cihazda hem ön hem de arka kameraların aynı anda çalışmasına olanak tanır. CameraX şu anda yalnızca çift eş zamanlı kamerayı desteklemektedir. Bu işlem, aynı anda iki kameranın aynı anda çalışmasına olanak tanır ve her birine en fazla iki {@link UseCase} bağlantılıdır. Maksimum çözünürlük 720p veya 1440p'dir. Daha fazla ayrıntıyı aşağıdaki bağlantıda bulabilirsiniz: KameraManager#getConcurrentKameraIds()
  • Aşağıdaki özellikleri kapsayan yeni ResolutionSelector API ile tanışın:
    • Uygulamalar, ihtiyaçlarına en uygun çözünürlüğü seçmek için en boy oranı ve çözünürlük stratejileri belirleyebilir.
    • Tüm boyutlar ve en boy oranı parametreleri, kamera cihazı sensörünün koordinatlarıyla ifade edilir.
    • Uygulamalar, desteklenen boyutları istenen sırayla düzenlemek için özel bir çözünürlük filtresi uygulayabilir.
    • Uygulamalar, daha yüksek çözünürlüklü görüntüler elde etmek için yüksek çözünürlüklü yakalamayı da etkinleştirebilir. Ancak yüksek çözünürlük kullanmanın daha uzun çekim sürelerine neden olabileceğini lütfen unutmayın.
    • VideoCapture yansıtma API'leri eklendi. VideoCapture tarafından kaydedilen videolar varsayılan olarak yansıtılmaz. Ancak kamera önizlemesi varsayılan olarak ön kamerada yansıtılır. VideoCapture yansıtma API'leri, ön kamerayı kullanırken kamera önizlemesine hizalamayı mümkün kılar. Üç MirrorMode, OFF, ON ve ON_FRONT_ONLY var. Kamera önizlemesine hizalamak için ON_FRONT_ONLY kullanmanız önerilir. Bu, yansıtmanın arka kamerada etkinleştirilmediği, ancak ön kamera için etkinleştirilmiş olduğu anlamına gelir.

API Değişiklikleri

  • Kullanıma sunulan yeni ResolutionSelector API. Uygulamalar, istenen sonuçları almak için yedek kuralları veya özel çözünürlük filtresi kullanarak en boy oranı ve çözünürlük stratejileri belirtebilir. Uygulamalar, yüksek çözünürlüklü yakalamayı etkinleştirmek için bir bayrak belirleyebilir. Bu, CameraX'in fotoğraf veya video çekerken daha yüksek çözünürlükler seçmesine olanak tanır. Ancak yüksek çözünürlük kullanmanın daha uzun çekim sürelerine neden olabileceğini lütfen unutmayın. (Ibed95)
  • AE algoritmasının desteklediği FPS aralıkları artık CameraInfo#getSupportedFrameRateRanges() üzerinden sorgulanabilir. (Iaa67f)
  • Tüm kare hızı yöntemlerinin adlarını "Kare Hızı" kullanarak birleştirin. VideoCapture#getTargetFrameRate() içindeki javadoc hatasını düzelt (I83304)
  • Eski setTargetAspectRatio ve setTargetResolution API'si kullanımdan kaldırıldı. Lütfen bunun yerine yeni ResolutionSelector API'yi kullanın. (I542c3)
  • Eşzamanlı çift kamera için aşağıdakileri de içeren herkese açık API'ler
    1. List<List<CameraInfo>> getAvailableConcurrentCameraInfos()
    2. ConcurrentCamera bindToLifecycle(@NonNull ConcurrentCameraConfig concurrentCameraConfig)
    3. boolean isConcurrentCameraModeOn() ve ConcurrentCameraConfig, SingleCameraConfig ve ConcurrentCamera (Iab1c1)
  • ImageProcessor.Response#getOutputImage değeriniNull yapın (Ib9c60)
  • VideoCapture.Builder.setMirrorMode(int) ve VideoCapture.getMirrorMode() dahil olmak üzere VideoCapture yansıtma API'leri eklendi. API'ler, video kaydının genel kamera önizleme davranışıyla tutarlı olmasını gerektiren uygulamalar için kullanışlıdır. Örneğin, arka kamera önizlemesi yansıtılmaz, ancak ön kamera önizlemesi yansıtılır. (I713b6, b/194634656)
  • VideoCapture.Builder içine setTargetFrameRate() API ve VideoCapture için getTargetFramerate() API'sini (I109d4) ekleyin
  • SurfaceOutput uygulamasını Kapatılabilir hale getirin ve SurfaceOutput.Event'nin herkese açık oluşturucusunu gizleyin. (I60ea8)
  • İşlenen bir kaydın sesini dinamik olarak kapatmak veya açmak için Recording.mute eklendi. İşlenen kaydın sesi açık bir şekilde kapatıldığında RecordingStats, AudioStats.AUDIO_STATE_MUTED değerini içerir. (Ie17fc)
  • #setEffects() parametresi boş değerli değil. Efektleri temizlemek için #clearEffects() API'si ekleyin. Uygulama, efektleri kaldırmak için #clearEffects() işlevini çağırmalıdır. (I4b4d9)
  • Kopya oluşturucusu olarak bir oluşturucu almak üzere ViewfinderSurfaceRequest.Builder için ikinci bir kurucu ekleyin (I621a7)

Hata Düzeltmeleri

  • Extensions API'yi çağıran uygulamaların kamera kapatılırken kilitlenmesine neden olan sorun düzeltildi (Ib27e5)
  • VideoCapture uygulamasının bazı cihazlarda ön kamerayla çalışmamasına neden olan sorun düzeltildi. Örneğin, Samsung Galaxy S23 ve Xiaomi 2107113SG cihazlarda. (Ibec7e, b/270656244)
  • Android 10 ve sonraki sürümlerde harici depolama ortak klasöründe Dosya kullanarak fotoğraf çekmenin her zaman başarısız olması sorunu düzeltildi. Android 10'da harici depolama ortak klasöründe Dosya kullanarak fotoğraf çekmek için requestLegacyExternalStorage politikasının uygulama etiketinde de true (doğru) olarak ayarlanması gerektiğini unutmayın. (I11b2c)
  • DefaultSurfaceProcessor ürününde RejectedExecutionException kilitlenmesi düzeltildi. VideoCapture bağlandığında ve etkinlik duraklatıldığında kilitlenme meydana gelebilir. (Idb46a, b/273713906)

Sürüm 1.3.0-alpha05

22 Mart 2023

androidx.camera:camera-*:1.3.0-alpha05 yayınlandı. Sürüm 1.3.0-alpha05 bu kayıtları içerir.

API Değişiklikleri

  • VideoCapture.Builder.setTargetRotation(int), VideoCapture.setTargetRotation(int), VideoCapture.setTargetRotationDegrees(int) ve VideoCapture.getTargetRotation() dahil VideoCapture rotasyon API'leri eklendi. API'lar, cihaz yönünü kilitleyen uygulamalar için kullanışlıdır. ImageCapture.setTargetRotationDegrees(int) ve ImageAnalysis.setTargetRotationDegrees(int) de eklendi. (Id3ffe, b/205242781)
  • Efekt hedefi olarak VIDEO_CAPTURE ve PREVIEW|VIDEO_CAPTURE uygulamasına izin verin. VIDEO_CAPTURE'i hedefleyen efektler VideoCapture Kullanım Alanına uygulanır; PREVIEW|VIDEO_CAPTURE'i hedefleyen efektler ise Önizleme'ye ve VideoCapture akışına kopyalamadan önce paylaşılan bir akışa uygulanır. (Iee6f3)

Hata Düzeltmeleri

  • Kamera 1.2.2: Pixel (I90aa2) gibi bazı cihazlarda ProGuard etkinleştirildiğinde CameraX Uzantılarının düzgün çalışmaması sorunu düzeltildi.
  • Uygulamanın ekran yönünün kendisini işlemesi durumunda önizlemenin döndürme sonrasında bozulabilmesine neden olan bir PreviewView hatası düzeltildi. Bu işlem yalnızca belirli cihazlarda gerçekleşir. Pixel a4, Pixel 5 ve Pixel 6a'da yeniden oluşturulabilir. (I14340, b/223488673)

Sürüm 1.3.0-alpha04

22 Şubat 2023

androidx.camera:camera-*:1.3.0-alpha04 yayınlandı. Sürüm 1.3.0-alpha04 bu kayıtları içerir.

Yeni Özellikler

Bir akışı birden fazla kullanım alanında paylaşarak daha önce desteklenmeyen Surface kombinasyonlarını destekleyen yeni bir özellik.

  • Daha önce, kamera donanım seviyesinde FULL ve daha düşük düzeyde "Preview, VideoCapture, ImageAnalysis"i bağlarken veya ESKİ donanım düzeyinde "Önizleme, Video Yakalama, Görüntü Yakalama"yı bağlarken CameraX IllegalArgumentException hatası veriyor.
  • Yeni davranış, bağlamaların istisnalar atmadan çalışmasıdır. Bunun yerine CameraX, paylaşılan bir akışı hem Önizleme hem de Video Yakalama'ya kopyalamak için OpenGL kullanır.
  • Arabellek maliyeti nedeniyle uygulamanın gecikme ve güç tüketiminde artış görülebilir.

API Değişiklikleri

  • ImageProxy değerini Bitmap biçimine dönüştürmek için API ekleyin. Desteklenen ImageProxy biçimi: ImageFormat.YUV_420_888 ve PixelFormat.RGBA_8888. Biçim geçersizse IllegalArgumentException atılır. (Ic7110)
  • Kotlin'de askıya alma işlevlerini kullanarak vizörü yapılandırmayı desteklemek için CoroutineCameraViewfinder ekleyin. (I657bc)
  • ViewfinderSurfaceRequest için yeni herkese açık kurucu ekleyin. Kullanıcının CameraCharacteristics sunamadığı durumlarda esneklik sağlar. (Ie6549)

Hata Düzeltmeleri

  • Bazı Samsung cihazlarda uygulama çok hızlı duraklatıldığında/devam ettirildiğinde yaşanan Uzantılar kilitlenmesi düzeltildi (Iaca26)

Sürüm 1.3.0-alpha03

25 Ocak 2023

androidx.camera:camera-*:1.3.0-alpha03 yayınlandı. Sürüm 1.3.0-alpha03 bu kayıtları içerir.

API Değişiklikleri

  • Varsayılan kameraya göre görüş açısı bilgisi sağlamak için CameraInfo.getIntrinsicZoomRatio eklendi. (Ib300c)
  • Lense dönük bilgi sağlamak için CameraInfo.getLensFacing eklendi. CameraSelector#LENS_FACING_EXTERNAL, harici kamera seçmek için deneysel bir özellik olarak eklendi. (Icaf3e)
  • CameraController cihazına kamera çıkışına efekt eklemek için #setEffect() ekleyin. (I1d21f)
  • SurfaceRequest içine invalidate() yöntemi ekleyin. Surface sağlayıcısı, daha önce sağlanan yüzeyin artık geçerli olmadığını bildirebilir. (Idc649)
  • ImageProcessor API'si ekleyin. Bu arayüz, ImageCapture ardışık düzenine işleme sonrası efektler eklemek içindir. (I575c6)
  • Daha fazla video çözünürlüğünü desteklemek için QualitySelector ile birleştirilebilen Recorder.Builder.setAspectRatio() API'si eklendi. (I8a082)
  • Hedef Video Kodlaması Bit Hızı'nı almak için Hedef Video Kodlaması BitRate ve Recorder#getTargetVideoEncodingBitRate ayarlamak için Recorder.Builder#setTargetVideoEncodingBitRate eklendi. (I5984d)

Hata Düzeltmeleri

  • Flaş birimi olmadığı ve flaş modu açıkken ImageCapture hatası düzeltildi. (I9e8b4, b/263391112)
  • Bazı Samsung Android 12 cihazlarda EXIF konum verileri yazılırken oluşan JPEG görüntü bozulması sorunu düzeltildi. (Ib7086, b/263747161, b/263289024)
  • fener/yakınlaştırma ayarı kamera başlatma zorunluluklarından önceyken (ör. CameraController#enableTorch çağrısı yapıldığında) beklemedeki işlem önbelleğe alınır ve başlatma zorunlu hale geldikten sonra gönderilir. (I11e92, b/264157663)

Sürüm 1.3.0-alpha02

7 Aralık 2022

androidx.camera:camera-*:1.3.0-alpha02 yayınlandı. Sürüm 1.3.0-alpha02 bu kayıtları içerir.

API Değişiklikleri

  • Önizleme çıkışına işleme sonrası efekti uygulamak için yeni bir API ekleyin. (Ic17d5)
  • OutputOptions.getDurationLimit öğesinin adı OutputOptions.getDurationLimitMillis, OutputOptions.setDurationLimit adı ise OutputOptions.setDurationLimitMillis olarak değiştirildi. (I91f0c)
  • Video kaydederken sesle ilgili ayarı yapmak için AudioConfig sınıfı ekleyin. Sesin gerekmediği durumlarda gereksiz izin isteklerini önlemek için @RequiresPermission ek açıklaması, startRecording işlevlerinden AudioConfig'ye taşınmıştır. (I28755)
  • Yeni video yakalama API'si uygulandıktan sonra artık kullanılmayan Meta Veriler, OnVideoSavedCallback, OutputFileOptions ve OutputFileResults sınıflarını kaldırın. (I38cd8)
  • Yeni video yakalama API'sini uygulayın. setTargetResolution artık desteklenmediği için, getVideoCaptureTargetSize ve setVideoCaptureTargetSize yöntemleri getVideoCaptureTargetQuality ve buna uygun olarak setVideoCaptureTargetQuality yöntemleri ile değiştirilir. (I2a1d5)

Hata Düzeltmeleri

  • Kullanımdan kaldırılan core.VideoCapture API'yi kaldırın. (I531e0)
  • Depolama izni olmadan resim çekerken onError geri çağırma işlevinin çağrılmaması sorunu giderildi (I936db, b/244807669)
  • Kamera uzantılarının kalitesini ve güvenilirliğini artırın. Bokeh desteği, resim yakalama ve önizlemenin devam ettirilmemesiyle ilgili sorunlar nedeniyle Kamera Uzantıları 1.1.0 ve daha eski sürümleri kullanan Motorola cihazlarda kamera uzantıları devre dışı bırakılır. (Id3ce3)
  • Eski cihazlarda ViewPort ile video kırpma etkinleştirildiğinde yaşanan yerel kilitlenme düzeltildi. (I16b8a, b/251357665)

Sürüm 1.3.0-alpha01

9 Kasım 2022

androidx.camera:camera-*:1.3.0-alpha01 yayınlandı. Sürüm 1.3.0-alpha01 bu kayıtları içerir.

Yeni Özellikler

  • Camera-viewfinder resmi olarak yayınlandı. Camera-viewfinder, Camera2'nin kamera feed'ini gösterebilen bir temel vizör widget'ı sağlar. Örnek için lütfen örnek kodu inceleyin.

API Değişiklikleri

  • Video süresi sınırının belirlenmesine izin vermek için OutputOptions.setDurationLimit eklendi. Belirtilen süre sınırı aşıldığında kayıt otomatik olarak sonlandırılır. (I902a0)
  • Video kaydı ses hatası durumu AudioStats.AUDIO_STATE_SOURCE_ERROR. Ses kaynağı kurulumu başarısız olduğunda veya bir hata oluştuğunda gönderilir. (I37410)

Hata Düzeltmeleri

  • Bazı sorunlu cihazların yakalama hatalarıyla karşılaştığında yakalamayı bir kez yeniden denemesine izin vermek için özel bir durum ekleyin. (Id4795)
  • ViewPager2 tarihinde PreviewView SurfaceView uygulaması siyah ekran sorununu düzeltin. Düzeltme kapsamında, istenen çözünürlük değiştirilmezse PreviewView, SurfaceView cihazını yeniden kullanır. (Ib3f27)
  • ViewPort veya CameraController API kullanıldığında video kırpmayı (WYSIWYG özelliği) destekleyin. (Ifbba8, b/201085351)
  • Huawei P40 lite'de ön kamerayla çekilen videonun kaydedilememesi sorunu düzeltildi. (I87c57, b/250807400)

Sürüm 1.2

Sürüm 1.2.3

24 Mayıs 2023

androidx.camera:camera-*:1.2.3 yayınlandı. 1.2.3 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • VideoCapture uygulamasının bazı cihazlarda ön kamerayla çalışmamasına neden olan sorun düzeltildi. Örneğin, Samsung Galaxy S23 ve Xiaomi 2107113SG cihazlarda. (Ibec7e, b/270656244)

Sürüm 1.2.2

22 Mart 2023

androidx.camera:camera-*:1.2.2 yayınlandı. 1.2.2 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Pixel (I90aa2) gibi bazı cihazlarda ProGuard etkinleştirildiğinde CameraX Uzantılarının düzgün çalışmaması sorunu düzeltildi

Sürüm 1.2.1

25 Ocak 2023

androidx.camera:camera-*:1.2.1 yayınlandı. 1.2.1 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Bazı Samsung Android 12 cihazlarda EXIF konum verileri yazılırken görülen JPEG görüntü bozulması sorunu düzeltildi. (b/263289024)

Sürüm 1.2.0

7 Aralık 2022

androidx.camera:camera-*:1.2.0 yayınlandı. 1.2.0 sürümü bu kayıtları içerir.

1.1.0'dan sonraki önemli değişiklikler

  • Yeni kamera-mlkit-vision kitaplığı. CameraX'i barkod tarama, yüz algılama ve metin algılama gibi pek çok MLKit özelliğiyle kolayca entegre edin. MLKitAnalyzer yeni API olarak eklendi.
  • Yeni deneysel Zero-Shutter Lag API. Yakalama ardışık düzenini optimize ederek gecikme süresini iyileştirir ve görüntü kalitesini iyi korur. Yakalama modu CAPTURE_MODE_ZERO_SHUTTER_LAG olarak ayarlandığında, deklanşör düğmesi tıklanır ve resmin çekildiği zaman arasındaki gecikme, diğer yakalama modlarına kıyasla en aza iner. ZERO_SHUTTER_LAG özelliğini desteklemeyen cihazlarda, CAPTURE_MODE_MINIMIZE_LATENCY yedek olur.
  • android.camera.core.VideoCapture öğesini kullanımdan kaldırın.
  • setStreamUseCase(), herkese açık Camera2Interop API'si olarak eklendi.
  • setOutputImageRotationEnabled için API düzeyi gereksinimi eklendi.
  • ImageAnalysis.Analyzer#getTargetResolutionOverride(), ImageAnalysis.Analyzer#getDefaultTargetResolution() olarak yeniden adlandırıldı.
  • Kaydedilen videoya konum meta verilerini ayarlamak için kullanılacak API eklendi.
  • VideoCapture ve 16:9 en boy oranında Önizleme kullanım alanları kullanıldığında düşük kare hızı düzeltildi
  • Bazı Samsung cihazlarda BOKEH uzantısı etkinleştirildiğinde ve kullanıcı kameraları değiştirdiğinde ortaya çıkan siyah önizleme sorunu düzeltildi.
  • API düzeyi 27 cihazlarda bulunan Samsung J7 Prime (SM-G610M) ve J7 (SM-J710MN) Preview/VideoCapture ile ilgili uzatılmış sorun düzeltildi.
  • Sorun çözüldüğü için Samsung Android T'de ön kameraların AF bölgesini yatay olarak çevirme çözümü devre dışı bırakıldı

Sürüm 1.2.0-rc01

24 Ekim 2022

androidx.camera:camera-*:1.2.0-rc01 yayınlandı. 1.2.0-rc01 sürümü bu kayıtları içerir.

API Değişiklikleri

  • OutputConfiguration için setStreamUseCase API ekleyin. Kullanıcı, akış oturumu için Akış Kullanım Alanı'nı belirtebilir. Bu şekilde, ihtiyacına göre optimizasyon yapmak üzere CameraX'in dahili mantığı geçersiz kılınarak Akış Kullanım Alanı'nı seçebilir. (Ib1a95)

Hata Düzeltmeleri

  • API düzeyi 27 cihazlarda bulunan Samsung J7 Prime (SM-G610M) ve J7 (SM-J710MN) Preview/VideoCapture ile ilgili uzatılmış sorun düzeltildi. 1920x1080 çözünürlük Preview/VideoCapture resimlerin genişletilmesine neden olur. Resim uzatma sorununu önlemek amacıyla Önizleme için 1920x1080 çözünürlüğün veya VideoCapture çözünürlüğünün seçilmemesi için geçici çözüm eklendi. (I0e04e)
  • Bazı Huawei cihazlarda 16:9 en boy oranıyla VideoCapture ve Önizleme kullanım alanlarının düşük kare hızı düzeltildi. (If8c88, b/223643510)
  • Önizlemenin SurfaceProvider özelliği ayarlanmadığında kamera açma hatası düzeltildi. Bu düzeltmenin bir parçası olarak, SurfaceProvider ayarlanmamış önizleme artık kamerayla çekim oturumunda yapılandırılmayacak. (I99681)

Sürüm 1.2.0-beta02

21 Eylül 2022

androidx.camera:camera-*:1.2.0-beta02 yayınlandı. 1.2.0-beta02 sürümü bu kayıtları içerir.

API Değişiklikleri

  • setOutputImageRotationEnabled için API düzeyi gereksinimi ekleyin (I26e3e, b/240993561)

Hata Düzeltmeleri

  • Sorun giderildiğinden Samsung Android T'de ön kameraların AF bölgesini yatay olarak çevirme geçici çözümü devre dışı bırakıldı. (I05f69)
  • Bazı Samsung cihazlarda BOKEH uzantısı etkinleştirildiğinde ve kullanıcı kameraları değiştirdiğinde ortaya çıkan siyah önizleme sorunu düzeltildi. (If6168)

Sürüm 1.2.0-beta01

24 Ağustos 2022

androidx.camera:camera-*:1.2.0-beta01 yayınlandı. 1.2.0-beta01 sürümü bu kayıtları içerir.

Yeni Özellikler

  • Yeni kitaplık camera-mlkit-vision. CameraX'i barkod tarama, yüz algılama, metin algılama vb. birçok MLKit özelliğiyle kolayca entegre edin. Örnek kodu burada bulabilirsiniz.
  • Yeni deneysel Zero-Shutter Lag API. Yakalama ardışık düzenini optimize ederek gecikme süresini iyileştirir ve görüntü kalitesini iyi korur. Yakalama modu CAPTURE_MODE_ZERO_SHUTTER_LAG olarak ayarlandığında, diğer yakalama modlarına kıyasla deklanşör düğmesi tıklandıktan sonra resmin en aza indirilmiş olması beklenir. ZERO_SHUTTER_LAG'i desteklemeyen cihazlarda tekrar CAPTURE_MODE_MINIMIZE_LATENCY olur.
  • ImageAnalysis.Analyzer ve MLKitAnalyzer resmi API olarak oluşturuldu.
  • Kaydedilen videonun konum meta verilerini ayarlamak için kullanıma sunulan API.
  • ImageAnalysis.Analyzer#getTargetResolutionOverride() alanının adını ImageAnalysis.Analyzer#getDefaultTargetResolution() olarak değiştirin.

Hata Düzeltmeleri

  • Alps k61v1_basic_ref görüntü yakalama sorunu düzeltildi. HAL'den yakalanan JPEG resimleri yanlış EXIF meta verilerine sahip. ExifInterface meta verisinin, özellikleri doğru şekilde ayrıştırmasını sağlayacak 0xffd9 veya 0xffda etiketi yoktur. Bu sorunu geçici olarak çözmek için resimleri YUV biçiminde yakalayıp JPEG çıkış resimleri olarak sıkıştırabilirsiniz. (I45abb)

Sürüm 1.2.0-alpha04

27 Temmuz 2022

androidx.camera:camera-*:1.2.0-alpha04 yayınlandı. Sürüm 1.2.0-alpha04 bu kayıtları içerir.

API Değişiklikleri

  • ImageAnalysis.Analyzer#getTargetResolutionOverride() alanının adını ImageAnalysis.Analyzer#getDefaultTargetResolution() olarak değiştirin. Bu yöntem tarafından döndürülen değerin, ImageAnalysis#setTargetResolution() değeri tarafından geçersiz kılınabilmesi için davranış da değiştirilir. (If1d36)
  • Kaydedilen videonun konum meta verilerini ayarlamak için kullanıma sunulan API. Yeni API androidx.camera.video.OutputOptions.Builder.setLocation(Location) aracılığıyla bir android.location.Location nesnesi ayarlanabilir. (I313a0, b/204197544)

Hata Düzeltmeleri

  • Önizlemeyi kaldırarak resim çekmeyle ilgili sorunu düzeltin (Ie70b6, b/235119898)
  • Ses kaynağı kullanılamadığında kayıt yapmaya çalışıldığında yaşanan Recorder kilitlenmesi düzeltildi. (I9f652)

Sürüm 1.2.0-alpha03

29 Haziran 2022

androidx.camera:camera-*:1.2.0-alpha03 yayınlandı. Sürüm 1.2.0-alpha03 bu kayıtları içerir.

API Değişiklikleri

  • ImageAnalysis.Analyzer ve MLKitAnalyzer için deneysel ek açıklama kaldırıldı. (I0ff22)

Hata Düzeltmeleri

  • FocusMeteringAction iptal edilmezse ve AF bölümü süre içinde birleştirilmemişse AF kısmını isFocusSuccessful yanlış ile tamamlayacak, 5.000 ms'lik otomatik odaklama varsayılan zaman aşımı eklendi. (Ibc2e3)
  • Önizlemeyi kaldırarak resim çekmeyle ilgili sorunu düzeltin (I1d3a2, b/235119898)
  • Gelişmiş uzatıcı uygulaması etkinleştirildi ve CameraX desteği uzantıları arayüzü sürümü 1.2 (I92256) olarak güncellendi.

Sürüm 1.2.0-alpha02

1 Haziran 2022

androidx.camera:camera-*:1.2.0-alpha02 yayınlandı. Sürüm 1.2.0-alpha02 bu kayıtları içerir.

Yeni Özellikler

  • CameraX Zero-Shutter Lag API'yi deneysel olarak kullanıma sunun.

API Değişiklikleri

  • Cihaz özelliğini sorgulamak için ImageCapture uygulamasına CAPTURE_MODE_ZERO_SHUTTER_LAG yeni yakalama modunu ekleyin ve CameraInfo uygulamasına isZslSupported modunu ekleyin. CAPTURE_MODE_ZERO_SHUTTER_LAG modu, anında yakalama için minimum gecikme süresini sağlamayı hedefliyor. Kullanıcı, fotoğraf çekmek için düğmelere bastığında daha sonra yeniden işlenmek üzere ara yakalama sonuçlarını önbelleğe alan halka arabelleği temel alınarak uygulanır. {@link VideoCapture} bağlıysa veya flaş modu KAPALI değilse ya da OEM Uzantısı AÇIK ise bu mod otomatik olarak devre dışı bırakılır. (I9ae74)
  • ImageAnalysis.getBackgroundExecutor() yöntemi ekleyin (Icc945)

Hata Düzeltmeleri

  • ImageCapture TakePicture yöntemi, bildirilen cihazlarda ışığı kapatır. (Ib5eb5, b/228272227)
  • CONTROL_ZOOM_RATIO_RANGE özelliği alınırken AssertionError öğesinin işlenmemesine neden olan hata düzeltildi.(/Ia248a, b/231701345)

Sürüm 1.2.0-alpha01

18 Mayıs 2022

androidx.camera:camera-*:1.2.0-alpha01 yayınlandı. Sürüm 1.2.0-alpha01 bu kayıtları içerir.

Yeni Özellikler

  • Yeni kamera-mlkit-vision kitaplığı kullanıma sunuldu

Hata Düzeltmeleri

  • Yedek stratejisi etkinleştirildiğinde QualitySelector ürününün UHD video kaydedememesi düzeltildi. Sorun, VideoCapture cihazı ImageCapture cihazına bağlandığında ortaya çıkar ve FULL ya da daha yüksek donanım düzeyinde bir kamera cihazında önizleme yapar. QualitySelector yedek stratejisi, VideoCapture ürününün yanlış bir şekilde FHD çözünürlüğü almasına neden oluyor. UHD çözünürlüğü aslında bu kullanım alanı kombinasyonu için destekleniyor ve kullanılmalıdır. (I0e788, b/230651237)
  • ImageCapture.takePicture() işletim sisteminde NullPointerException düzeltildi. (I92366, b/230454568, b/229766155)
  • androidx.camera.video.Recorder ürününün (Ia8ce8) eşzamansız duraklatma davranışını düzeltin

Kamera-Kamera2, Kamera Çekirdeği, Kamera-Yaşam Döngüsü ve Kamera-Video Sürümü 1.1.0

Sürüm 1.1.0

29 Haziran 2022

androidx.camera:camera-*:1.1.0 yayınlandı. 1.1.0 sürümü bu kayıtları içerir.

1.0.0'dan sonraki önemli değişiklikler

  • İlk RC sürümü olan Landed View, Uzantı ve Video Yakalama kitaplıkları. 1.1.0-beta01 sürümünden itibaren tüm CameraX kitaplıkları aynı sürüm numarasına sahip olacaktır. Bu, geliştiricilerin sürümleri çok daha kolay izlemesine yardımcı olacak ve büyük sürüm uyumluluk matrislerinin karmaşıklığını azaltacaktır.
  • Aşağıdakileri içeren, herkese açık yeni API'ler ve özellikler kullanıma sunuldu:
  • Video çekimi kullanım alanlarını desteklemek için resmi kamera-video kitaplığını ekleyin.
  • YUV'den RGB'ye dönüştürme ve döndürme özelliği (ImageAnalysis.Builder.setOutputImageRotationEnabled ve setOutputImageFormat)
  • Kamera başka bir uygulama tarafından kesildiğinde ve odak geri döndüğünde CameraX uygulamalarının kamerayı devam ettirmesine izin vererek çoklu pencere modunu destekleyin.
  • Bazı önizleme sorunlarını düzelterek CameraX'in katlanabilir cihazlarda iyi bir şekilde çalışmasını sağlar.
  • CameraInfo aracılığıyla gösterilecek bir CameraState API'si eklendi.
  • Kullanılabilir kameralarla ilgili bilgileri doğrudan almak için bir API ProcessCameraProvider.getAvailableCameraInfos() eklendi
  • Uzantılar etkinleştirildiğinde ImageCapture#OnImageCapturedCallback için çıkış JPEG biçimi.
  • CameraInfo uygulamasına, belirtilen FocusMeteringAction öğesinin mevcut kamerada desteklenip desteklenmediğini kontrol etme olanağı tanıyan bir API isFocusMeteringSupported eklendi.
  • Önizleme, ImageCapture ve ImageAnalysis için çözünürlük bilgilerini sağlamak amacıyla getResolutionInfo API kullanıma sunuldu.
  • Resim çekerken çıkış JPEG resim sıkıştırma kalitesinin değiştirilmesine olanak tanıyan yeni bir API (ImageCapture.Builder#setJpegQuality) eklendi.
  • CameraInfos listesini bir CameraSelector öğesine göre filtrelemek için CameraSelector#filter, herkese açık API'ye eklendi.
  • Mevcut yakalama isteği seçeneklerini temizlemek için Camera2CameraControl.clearCaptureRequestOptions eklendi.
  • Harici görüntü işleme kitaplıklarıyla (ör. MLKit) CameraController kullanımı için deneysel bir API eklendi.
  • Kamerasına benzersiz bir CameraSelector döndüren deneysel API CameraInfo#getCameraSelector() eklendi
  • Bazı deneysel API'leri herkese açık resmî API'lere yükseltti
  • @Experimental ek açıklaması, deneysel API'lerde @RequiresOptIn ile değiştirildi. Deneysel API'leri çağırmak için kullanımdan kaldırılan androidx.annotation.experimental.UseExperimental yerine androidx.annotation.OptIn işlevini kullanın.
  • Şu deneysel API'ların resmi API'lere tanıtılması: CameraXConfig.Builder#setAvailableCamerasLimiter(), CameraXConfig.Builder#setMinimumLoggingLevel(), CameraXconfig.Builder#setSchedulerHandler(), CameraXConfig#getAvailableCamerasLimiter(), CameraXConfig#getMinimumLoggingLevel(), CameraXConfig#getCameraExecutor(), CameraXConfig#getSchedulerHandler(),
  • @ExperimentalCameraFilter API
  • deneysel maruz kalma dengeleme API'leri için geçerlidir.
  • Kamera çekirdeği, kamera yaşam döngüsü ve kamera-video için deneysel UseCaseGroup API tanıtıldı. Görüntü alanını özelleştirmek için ViewPort#getLayoutDirection, ViewPort.Builder#setLayoutDirection ve ViewPort.Builder#setScaleType eklendi.
  • ExperimentalUseCaseGroupLifecycle, herkese açık resmi API'lere yükseltildi.
  • Mevcut API'lerdeki değişiklikler
  • MediaStoreOutputOptions.getCollectionUri için Renamed MediaStoreOutputOptions.getCollection.
  • ActiveRecording, ayrıntı düzeyini azaltmak için "Kayıt" olarak yeniden adlandırıldı.
  • QualitySelector Creator API, liste tabanlı bir API ile değiştirildi

Hata Düzeltmeleri

  • Uzantı modu etkinleştirildiğinde ve ImageCapture#CAPTURE_MODE_MAX_QUALITY modu ayarlandığında YuvToJpegProcessor EOFException sorunu düzeltildi.
  • Video kaydı kapatıldığı için sabit codec yapılandırması başarısız oldu
  • FHD kalitesinde kayıt yaparken uzatılmış önizleme/video en boy oranı düzeltildi
  • Bazı cihazlarda duraklatma ve devam ettirme işleminden sonra ses/videonun senkronize olmaması sorunu düzeltildi
  • Flaş modu otomatik veya düşük ışıklı ortamlarda "her zaman_açık" olduğunda dokunarak odaklamak (startFocusAndMetering) sırasında flaşın tetiklenmesi sorunu düzeltildi.

Sürüm 1.1.0-rc02

1 Haziran 2022

androidx.camera:camera-*:1.1.0-rc02 yayınlandı. 1.1.0-rc02 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • ImageCapture.takePicture() işletim sisteminde NullPointerException düzeltildi. (I92366, b/230454568, b/229766155)
  • CONTROL_ZOOM_RATIO_RANGE özelliği alınırken AssertionError öğesinin işlenmemesine neden olan hata düzeltildi. (Ia248a, b/231701345)

Sürüm 1.1.0-rc01

11 Mayıs 2022

androidx.camera:camera-*:1.1.0-rc01 yayınlandı. 1.1.0-rc01 sürümü bu kayıtları içerir.

Yeni Özellikler

  • Kamera-video, kamera görünümü ve kamera uzantısı için ilk RC sürümünü yayınlayın

Hata Düzeltmeleri

  • VideoCapture<Recorder> bağlantısı kaldırıldığında video codec'inin yayınlanmaması sorunu giderildi. Bu hata, VideoCapture<Recorder> ürününün sonraki kullanımlarında, özellikle API 21-22 cihazlarda, MediaCodec.CodecException ile kayıtta başarısız olmasına neden oluyordu. (Ie7f68)
  • CameraExtensionsActivity ile ilgili yakalanmış resimleri düzeltin, ImageCaptureTest ürününde silinme

Sürüm 1.1.0-beta03

6 Nisan 2022

androidx.camera:camera-*:1.1.0-beta03 yayınlandı. 1.1.0-beta03 sürümü bu kayıtları içerir.

API Değişiklikleri

  • CaptureRequestOptions oluşturucu kısıtlandı. (I261b6)
  • Harici görüntü işleme kitaplıklarıyla birlikte CameraController kullanımı için deneysel bir API eklendi. Ör. MLKit (I4ea71)

Hata Düzeltmeleri

  • Çoklu penceredeki cihazlar döndürüldükten sonra etkinlik yeniden başlatılmadığında önizlemenin PreviewView içinde yan kalması sorunu düzeltildi. (I1ea36, b/223488673)
  • Odak tekrar uygulamaya geçtiğinde (1) yüksek öncelikli başka bir uygulama farklı bir kamera açtığında (2) cihaz Samsung Android 12 cihaz olduğunda kameranın devam ettirilememesine neden olan çoklu pencere sorununu düzeltme (I7e9f2)
  • Flash'ın kullanılabilirliği kontrol edilirken kilitlenen cihazlar için geçici çözüm dahildir. Bu cihazlarda fener kullanılamaz. (If26a3, b/216667482)
  • Uygulamalar uzantı kullandığında ve ProGuard'ı etkinleştirdiğinde oluşan AbstractMethodError sorunu düzeltildi. (I7cbaf, b/222726805)
  • Motorola razr 5G cihazda bokeh uzantı modunu zorla devre dışı bırakın. Bu durum, siyah önizleme ekranı sorununa neden olur. (I35d49)
  • API 29 öncesi bazı Samsung cihazlarda duraklatma ve devam ettirme işleminden sonra ses/videonun senkronize olmaması sorunu düzeltildi. (I64622, b/202798609, b/202798572)
  • Sony G3125'te duraklatma ve devam ettirme işleminden sonra ses/videonun senkronize olmaması sorunu düzeltildi. (I2a1a5, b/202799148)
  • Kaydedici bir InvalidConfigException ile karşılaştığında meydana gelen kilitlenme düzeltildi. Ancak bu düzeltme yalnızca uygulamanın kilitlenmesini engeller, ancak InvalidConfigException sorununun nedenini ortadan kaldırmaz. Recorder hâlâ yapılandırılamazsa kayda başladığında uygulamalar hata geri çağırması alır. (I89c29, b/213617227)

Harici Katkı

  • test-coroutines-lib geçişi nedeniyle :compose:ui:ui-test api (updateApi) güncellendi (I3366d)

Sürüm 1.1.0-beta02

23 Şubat 2022

androidx.camera:camera-*:1.1.0-beta02 yayınlandı. 1.1.0-beta02 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Camera2Interop aracılığıyla fiziksel kamera kimliğini belirleme özelliği eklendi. (I5aed8)

Hata Düzeltmeleri

  • Oppo Find N'de (I7d004) uzatılmış önizleme sorunu düzeltildi
  • Önizlemenin bozulmasına neden olan bir Galaxy J7 Prime sorunu giderildi. (I4c500)
  • Video kodlayıcıyı bulmak için uyumlu bit hızını kullanın. (d969052)

Sürüm 1.1.0-beta01

26 Ocak 2022

androidx.camera:camera-*:1.1.0-beta01 yayınlandı. 1.1.0-beta01 sürümü bu kayıtları içerir.

Yeni Özellikler

  • 1.1.0-beta01 sürümünden itibaren tüm CameraX kitaplıkları aynı sürüm numarasına sahip olacaktır. Bu, geliştiricilerin sürümleri çok daha kolay izlemesine yardımcı olacak ve büyük sürüm uyumluluk matrisinin karmaşıklığını azaltacaktır.

API Değişiklikleri

  • Mevcut yakalama isteği seçeneklerini temizlemek için Camera2CameraControl.clearCaptureRequestOptions eklendi. (Ifa07d)

Hata Düzeltmeleri

  • Android O(API 26) öncesi bazı cihazlarda video kaydederken yaşanan kilitlenme düzeltildi. (I88fdf, b/212328261)
  • Samsung cihazlarda ön lense bakan kamerada cameraControl#startFocusAndMetering() kullanılırken karşılaşılan yanlış AF bölgesi sorunu düzeltildi (Ifbf59, b/210548792)
  • Karanlıkta hızı ve yakalanan resim kalitesini artırmak için Pixel 3a/Pixel 3a XL'de flaş olarak flaş kullanın (Ib12b6, b/211474332)
  • Uygulamaların, kamera çoklu pencere modundaki yüksek öncelikli başka bir uygulama tarafından kesintiye uğratıldığında ve odak tekrar uygulamaya geçtiğinde kamerayı devam ettirmesi etkinleştirildi. Çerçeve sorunları nedeniyle odak değişikliklerinin gerçekleşmesi ile kameranın yeniden açılması arasında bir miktar gecikme(1 saniye ila 10 saniye veya daha uzun) olabileceğini lütfen unutmayın. (I4d092)

Sürüm 1.1.0-alfa12

15 Aralık 2021

androidx.camera:camera-*:1.1.0-alpha12 yayınlandı. Sürüm 1.1.0-alpha12 bu kayıtları içerir.

API Değişiklikleri

  • İç sınıflardan/arayüzlerden gereksiz @RequiresApi(21) ek açıklamaları kaldırıldı. (I8e286, b/204917951)
  • QualitySelector öğesinin kalite sabitleri ve yedek stratejisi sabitleri, sınıf nesneleriyle temsil edilecek şekilde değiştirildi. Örneğin, QualitySelector.QUALITY_HD değeri Quality.HD olarak, QualitySelector.FALLBACK_STRATEGY_LOWER değeri ise FallbackStrategy.lowerQualityOrHigherThan(Quality) tarafından döndürülen örnek olarak değiştirilir. QualitySelector API'sini oluşturmak için kullanılan API, liste tabanlı bir API olarak değiştirildi. Yeni API QualitySelector.fromOrderedList(List<Quality>), QualitySelector.Procedure tarafından oluşturulan sıra yerine giriş kalitesi listesinin sırasını referans alacak. QualitySelector.Procedure sınıf kaldırıldı. (I43343)
  • PendingRecording.withEventListener() kaldırıldı. Etkinlik işleyicinin artık PendingRecording.start() öğesine iletilmesi gerekiyor. Bu etkinlik işleyici şartının amacı, VideoRecordEvent.Finalize etkinliğinde bildirilen eşzamansız hataların işlenmesini teşvik etmektir. (I1e71d)
  • ActiveRecording, ayrıntı düzeyini azaltmak için Recording olarak yeniden adlandırıldı. (I77ceb)

Hata Düzeltmeleri

  • FLASH_AUTO modunda çekilen fotoğraflarda Pixel 3a ve Pixel 3a XL'deki (I13f19, b/205373142) karanlık koşulların düşük ışık alması sorunu düzeltildi.
  • Önizlemeyi Resolution belirlemek için her zaman en son görüntü boyutunu kullanın. (I4a694)
  • REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE içermeyen kameralar filtrelendi. REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE özelliğine sahip kameralar, her kamera cihazının desteklediği minimum özellik grubuna sahiptir. REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE içermeyen kamera, özel işlevi destekleyen bir kamera olabilir ve standart renk çıkışını desteklemez. CameraX; bu kameraların Preview, ImageCapture, ImageAnalysis veya VideoCapture kullanım alanlarını destekleyemez. Bu nedenle, yanlış kullanımı önlemek için bu kameralar filtrelenmelidir. (Ib8cda)
  • CameraSelector#filter artık sonuç kümesi boş olduğunda IllegalArgumentException atmıyor. (I27804)
  • Kodlayıcı ayarlarını OEM tarafından belirtilen profillere göre seçmek için artık daha akıllı buluşsal yöntemler kullanılmaktadır. (Iaeef0)
  • Pixel1'de UHD video kaydı başladıktan sonra Sabit Önizleme'nin renk çizgileri aralıklı olacaktır. (I833c6, b/205340278)

Sürüm 1.1.0-alfa11

17 Kasım 2021

androidx.camera:camera-*:1.1.0-alpha11 yayınlandı. Sürüm 1.1.0-alpha11 bu kayıtları içerir.

API Değişiklikleri

  • CameraSelector'a dayalı bir CameraSelector listesinin filtrelenmesi için CameraSelector#filter herkese açık API'ye eklendi. (I105d0)
  • ImageAnalysis yapılandırması için setExitImageRotationEnabled API'sini ekleyin. Kullanıcı, YUV/RGB resim arabelleği için döndürmeyi etkinleştirebilir. Döndürme derecesi, görüntüyü açık tutmak için sensör rotasyonuna ve hedef dönüşe göre hesaplanan göreli bir dönüşdür.

  • ImageAnalysis yapılandırması için setExitImageRotationEnabled API'sini ekleyin. Kullanıcı, YUV/RGB resim arabelleği için döndürmeyi etkinleştirebilir. Döndürme derecesi, görüntüyü açık tutmak için sensör rotasyonuna ve hedef dönüşe göre hesaplanan göreli bir dönüşdür.

    ImageInfo'ya getSensorToBufferTransformMatrix API'sini ekleyin. Döndürülen matris, sensör koordinatlarından tampon koordinatlarına, yani CameraCharacteristics.SENSOR_INFO_ACTIVE_ARRAY_SIZE değerinden (0, 0, image.getWidth, image.getHeight) değerine yapılan bir eşlemedir. Matris, koordinatları bir {UseCase} öğesinden diğerine eşlemek için kullanılabilir. Örneğin, ImageAnalysis ile algılanan yüzün koordinatlarını Önizleme'ye eşleyebilirsiniz. (I9ff1e)

  • Resim çekerken çıkış JPEG resim sıkıştırma kalitesinin değiştirilmesine olanak tanımak için yeni ImageCapture.Builder#setJpegQuality API'sı eklendi. (I8dcf4)

  • MediaStoreÇıkışOptions.getCollection, MediaStoreÇıkışSeçenekleri.getCollectionUri olarak değiştirilmiştir. (I16639)

Hata Düzeltmeleri

  • Flaş modu otomatik veya loş ışıkta her zaman açık olduğunda dokunarak odaklama (startFocusAndMetering) sırasında flaşın tetiklenmesi sorunu düzeltildi. (Id4c11)
  • Gecikmeyi azaltmak için Pixel 2 XL / Pixel 3 XL'de MINIMIZE_LATENCY modunda HDR+ devre dışı bırakıldı. (Ib6270, b/203505523)

Harici Katkı

Sürüm 1.1.0-alfa10

13 Ekim 2021

androidx.camera:camera-*:1.1.0-alpha10 yayınlandı. Sürüm 1.1.0-alpha10 bu kayıtları içerir.

Yeni Özellikler

  • Videonun ilk alfa sürümü olarak androidx.camera:camera-video:1.1.0-alpha10 resmi olarak yayınlandı. Sonraki sürümlerde düzeltilecek bazı bilinen sorunlar bulunmaktadır.

API Değişiklikleri

  • Tüm CameraX sınıflarına @RequiresApi(21) ek açıklaması eklendi ve AndroidManifest.xml dosyasından minSdkVersion kaldırıldı. Bu, minSdkVersion 21'den az olan ancak API 21 ve üstünü kullanan kod yollarını koşullu olarak kullanmak isteyen uygulamalara kamera çekirdeğinin kolayca entegre edilmesini sağlar. MinSdkVersion 21 veya sonraki sürümleri çalıştıran uygulamalar için bu değişiklik için herhangi bir işlem yapılması gerekmez. (Ie7f2e, b/200599470)

Hata Düzeltmeleri

  • Uygulamanın, CameraAttributess oluşturulurken AssertionError'u sorunsuz şekilde işleyebilmesi için bir InitializationException çalıştırın. (Ibec79)

Sürüm 1.1.0-alpha09

29 Eylül 2021

androidx.camera:camera-camera2:1.1.0-alpha09, androidx.camera:camera-core:1.1.0-alpha09 ve androidx.camera:camera-lifecycle:1.1.0-alpha09 yayınlandı. Sürüm 1.1.0-alpha09 bu kayıtları içerir.

API Değişiklikleri

  • API'ler artık deneysel olmadığından ExperimentalUseCaseGroup ek açıklaması kaldırılmıştır. (I01ef5)

Hata Düzeltmeleri

  • Çekilen fotoğrafların MAXIMIZE_QUALITY modunda bulanıklaştırılması sorununu düzeltin. (I173a9, b/193823892)
  • Karanlık ortamda flaş açıkken/otomatik olarak fotoğraf çektikten sonra kameranın takılmasına neden olan Samsung Galaxy J5 sorunu düzeltildi (I3aab9)
  • ImageCapture için kırpma işlemi gerektiğinde, kırpılan çıkış resmi ayarlanan yakalama moduna göre belirtilen JPEG kalite seviyesiyle sıkıştırılır. Yakalama modu CAPTURE_MODE_MINIMIZE_LATENCY ise JPEG sıkıştırma kalitesi 95 olur. Yakalama modu CAPTURE_MODE_MAXIMIZE_QUALITY ise JPEG sıkıştırma kalitesi 100 olur. (Ieb37c, b/142856426)

Sürüm 1.1.0-alpha08

18 Ağustos 2021

androidx.camera:camera-camera2:1.1.0-alpha08, androidx.camera:camera-core:1.1.0-alpha08 ve androidx.camera:camera-lifecycle:1.1.0-alpha08 yayınlandı. Sürüm 1.1.0-alpha08 bu kayıtları içerir.

Yeni Özellikler

  • Resim analizi yapılandırması için setExitImageFormat API'sini ekleyin. Kullanıcı, ImageAnalysis.OUTPUT_IMAGE_FORMAT_YUV_420_888 veya ImageAnalysis.OUTPUT_IMAGE_FORMAT_RGBA_8888 seçimini yapabilir. Varsayılan olarak ImageAnalysis.OUTPUT_IMAGE_FORMAT_YUV_420_888 seçilir. (I7902d)

API Değişiklikleri

  • API'ler artık deneysel olmadığından ExperimentalUseCaseGroupLifecycle ek açıklaması kaldırılmıştır. (I17b85)

Hata Düzeltmeleri

  • Huawei P20 Lite'ta Sabit Önizleme ekranı çok parlak. Bu sorun yalnızca belirli özel Önizleme çözünürlükleri büyük yakınlaştırma değeriyle birlikte kullanıldığında ortaya çıkar. (Idefce, b/192129158)
  • Bazı cihazlarda flaş modunu FLASH_MODE_ON olarak ayarlayıp kısa bir süre sonra resim çekerken flaşın çalışmaması sorunu giderildi. (Ieb49b)
  • Video Yakalama, Görüntü Yakalama ve Önizleme özellikleri bağlıysa resim çekerken Önizlemenin bir süre durmasına neden olan sorun düzeltildi. (I56197, b/193864120)
  • ImageAnalysis'in 1080p'den daha büyük bir çözünürlük seçmesine olanak tanır. LIMITED seviyenin üzerindeki bir cihaz, Preview ve ImageCapture ile birbirine bağlandığında ImageAnalysis için KAYIT boyut çözünürlüğünü destekleyebilir. Bu denge, ImageCapture için seçilen çözünürlük değeridir ve aynı zamanda RECORD (KAYIT) boyutunda bir çözünürlük olması gerekir. ImageAnalysis için bir KAYIT boyut çözünürlüğünü başarıyla seçmek üzere, hem ImageCapture hem de ImageAnalysis'te KAYIT boyutu hedef çözünürlüğü ayarlanmalıdır. Bu, uygulamanın bu dengeyi net bir şekilde anladığını ve Resim Yakalama'nın MAKSİMUM çözünürlüğe sahip olması yerine ImageAnalysis'in daha büyük bir çözünürlüğe sahip olmasını tercih ettiğini gösterir. Veri türü KAYIT ve MAKSİMUM boyutlarıyla ilgili tanımlar ve diğer ayrıntılar için https://developer.android.com/reference/android/hardware/camera2/cameraDevice#regular-capture adresine bakın. KAYIT boyutu, kamera cihazının CamcorderProfile tarafından belirlendiği şekilde desteklenen maksimum kayıt çözünürlüğünü belirtir. MAXIMUM boyut, kamera cihazının StreamConfigurationMap.getExitSizes(int) biçiminde belirtilen biçim veya hedef için maksimum çıkış çözünürlüğünü belirtir. (I1ee97, b/192911449)
  • Çekilen görüntüye EXIF bilgilerini ekleyin. (I01ff0, b/193342619)
  • ImageCapture'da, kaydetme konumu Dosya ise kaydedilen görüntünün URI'sını döndürün. (Ib5b49, b/149241379)
  • Flash ile çekilen resimlerin birçok cihazda koyu renk olması sorunu düzeltildi. (I4e510)

Sürüm 1.1.0-alpha07

21 Temmuz 2021

androidx.camera:camera-camera2:1.1.0-alpha07, androidx.camera:camera-core:1.1.0-alpha07 ve androidx.camera:camera-lifecycle:1.1.0-alpha07 yayınlandı. Sürüm 1.1.0-alpha07 bu kayıtları içerir.

Hata Düzeltmeleri

  • Samsung Galaxy Note 5'te, karanlık ortamda flaş açık/otomatik olarak fotoğraf çektikten sonra kameranın takılmasına neden olan bir Samsung Galaxy Note 5 sorunu giderildi (If6871)
  • Uzantı modu etkinleştirildiğinde ve ImageCapture#CAPTURE_MODE_MAX_QUALITY modu ayarlandığında YuvToJpegProcessor EOFException sorunu düzeltildi. (I538bd, b/192017012)

Sürüm 1.1.0-alpha06

30 Haziran 2021

androidx.camera:camera-camera2:1.1.0-alpha06, androidx.camera:camera-core:1.1.0-alpha06 ve androidx.camera:camera-lifecycle:1.1.0-alpha06 yayınlandı. 1.1.0-alpha06 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Kamera çekirdeği için deneysel pozlama telafi API'lerini (I08ee8) tanıtın
  • CameraInfo'da belirtilen FocusMeteringAction'ın mevcut kamerada desteklenip desteklenmediğini kontrol etmesini sağlayan bir API isFocusMeteringSupported API. (Ib45ae, b/188606490)
  • Önizleme, ImageCapture ve ImageAnalysis için çözünürlük bilgilerini sağlamak üzere açığa çıkan getResolutionInfo API. (I2b613, b/188600718)
  • Aşağıdaki deneysel API'ların resmi API'lere yükseltilmesi: KameraXConfig.Builder#setAvailableCamerasLimiter(), KameraXConfig.Builder#setMinimumLoggingLevel(), KameraXconfig.Builder#setSchedulerHandler(), KameraXConfig#getAvailable CamerasLimiter(), KameraXConfig#getLaunchrLoggingLevel(), IXConfig#getKameraExecutor() (IXConfig#getKameraExecutor())
  • Bir dizi kameraya erişim sağlamak için CameraProvider arayüzü açıldı. (I1a7b1)
  • Kamera çekirdeği, kamera yaşam döngüsü ve kamera-video için deneysel UseCaseGroup API'sini tanıtın. Görüntü alanını özelleştirmek için ViewPort#getLayoutDirection, ViewPort.Builder#setLayoutDirection ve ViewPort.Builder#setScaleType eklendi. (I7cee8)

Sürüm 1.1.0-alpha05

2 Haziran 2021

androidx.camera:camera-camera2:1.1.0-alpha05, androidx.camera:camera-core:1.1.0-alpha05 ve androidx.camera:camera-lifecycle:1.1.0-alpha05 yayınlandı. Sürüm 1.1.0-alpha05 bu kayıtları içerir.

API Değişiklikleri

  • Camera2CameraFilter sınıf kaldırıldı. Kamerayı CameraFilter özelliğini kullanarak seçmenizi ve gerekirse Camera2 CameraInfo aracılığıyla Camera2 için Kamera2 özelliklerini veya diğer kamera özelliklerini almayı önerin. (Ib887c)
  • ExperimentalCameraFilter API'ler deneysel aşamadan çıkarak resmi API'lere dönüştü. Ek açıklamalı Etkinleştirme olmadan kullanılabilir. (I4bc94)
  • CameraInfo#getCameraState() tarihinden itibaren herkese açık kamera durumu API'si eklendi. (Ia86b4)
  • Kamerasına özel bir CameraSelector döndüren deneysel API CameraInfo#getCameraSelector() eklendi (I77f9f)

Hata Düzeltmeleri

  • Bazı Android 11 cihazlarda (I716d7) setZoomRatio'da ListenableFuture'ın döndürdüğü ve setLinearZoom'un tamamlayamamasına neden olan sorun düzeltildi
  • Kamera geçişini hızlandırın ve kamera cihazının hata oluşma oranını azaltın (I34c99)
  • ExperimentalUseCaseGroupLifecycle, DeneyselKullanımCaseGroup ile değiştirildi. (I3b2ef, b/159033688)

Sürüm 1.1.0-alpha04

21 Nisan 2021

androidx.camera:camera-camera2:1.1.0-alpha04, androidx.camera:camera-core:1.1.0-alpha04 ve androidx.camera:camera-lifecycle:1.1.0-alpha04 yayınlandı. Sürüm 1.1.0-alpha04 bu kayıtları içerir.

Hata Düzeltmeleri

  • Birden fazla iş parçacığının aynı koleksiyona aynı anda erişmesinden kaynaklanan bellek sızıntısı düzeltildi. Bellek sızıntısı, Etkinlik veya Parça'nın bir Önizleme örneği tarafından saklanmasına neden olabilir. (I7b4b8)
  • @Experimental ek açıklaması, deneysel API'lerde @RequiresOptIn ile değiştirildi. Deneysel API'leri çağırmak için kullanımdan kaldırılan androidx.annotation.experimental.UseExperimental yerine androidx.annotation.OptIn kullanın. (Iff226)
  • Flaş Açık/Otomatik olarak görüntü yakalama özelliği, Samsung Galaxy S7'de kaybolan resimleri çeker. (I30001)
  • CameraInfo aracılığıyla kullanıma sunulacak bir CameraState API'si eklendi. (I75392)

Sürüm 1.1.0-alpha03

24 Mart 2021

androidx.camera:camera-camera2:1.1.0-alpha03, androidx.camera:camera-core:1.1.0-alpha03 ve androidx.camera:camera-lifecycle:1.1.0-alpha03 yayınlandı. Sürüm 1.1.0-alpha03 bu kayıtları içerir.

Hata Düzeltmeleri

  • Uzantı modları etkinleştirildiğinde ImageCapture#OnImageCapturedCallback için çıkış JPEG biçimi. (I0d7b1)
  • UMIDIGI BISON cihazlarında (I57d9e, b/180818665) başlatma hatası düzeltildi
  • PreviewView'da Samsung A3 uzatılmış önizlemesi düzeltildi. (Iacb30, b/180121821)

Sürüm 1.1.0-alpha02

24 Şubat 2021

androidx.camera:camera-camera2:1.1.0-alpha02, androidx.camera:camera-core:1.1.0-alpha02 ve androidx.camera:camera-lifecycle:1.1.0-alpha02 yayınlandı. Sürüm 1.1.0-alpha02 bu kayıtları içerir.

API Değişiklikleri

  • Kullanılabilir kameralar (cihazın tüm kameraları veya CameraXConfig.Builder.setAvailableCamerasLimiter(CameraSelector) içinde sağlanan CameraSelector tarafından seçilenler) hakkında doğrudan bilgi almak için bir API ProcessCameraProvider.getAvailableCameraInfos() eklendi. (Ieac08)

Hata Düzeltmeleri

  • CameraX şimdi ilk denemede bir kamerayı zorla açmaya çalışıyor. Bu durum, uygulaması daha yüksek bir önceliğe sahip olduğunda CameraX'in kamerayı diğer kamera istemcilerinden çalmasına neden olabilir. (Iab069, b/175820568)
  • CameraXConfig'de setAvailableKamerasLimiter kullanıldığında oluşan Robolectric testi hatası düzeltildi. (Buz307)
  • Bu değişiklik, ImageAnalysis'te görüntü sırası maksimuma ulaştığı zaman istisnayı yakalar. Dolayısıyla, kilitlenme yerine donmuş veya yavaşlamış önizleme gibi diğer kullanım alanlarının donduğunu fark edebilirsiniz. (Ic12da, b/175851631)
  • Yalnızca Preview veya ImageCapture bağlı olduğunda sorunları bildirmek için ExtensionsErrorListener aracı düzeltildi. (I5ae39)
  • Resim çekmeden önce resmin kaydedildiği konumun doğrulamasını kaldırarak ImageCapture performansındaki regresyon düzeltildi. Bu değişiklik yapıldıktan sonra, kaydetme hedefi geçersizse, fotoğraf çekildikten sonra resmi kaydetmeye çalışacağından hata yanıtının alınması daha uzun sürer. (I1fd4e, b/177061560)
  • "File" (Dosya) türü OutputFileOptions ile ilgili ImageCapture performansı gerilemesi düzeltildi. (I5164a, b/177061560)
  • Belgeler, kitaplık kodundan ProcessCameraProvider.configureInstance(...) kullanmamanızı önerecek şekilde güncellendi. (Ib8a9f)

Sürüm 1.1.0-alpha01

27 Ocak 2021

androidx.camera:camera-camera2:1.1.0-alpha01, androidx.camera:camera-core:1.1.0-alpha01 ve androidx.camera:camera-lifecycle:1.1.0-alpha01 yayınlandı. Sürüm 1.1.0-alpha01 bu kayıtları içerir.

Hata Düzeltmeleri

  • SM-G930T arka kamerada JPEG'lerde zaman zaman görülen bozuk resim verileri için geçici çözüm dahil edilmiştir. (I52001, b/159831206)
  • Önizlemenin desteklediği tüm boyutların 640x480'den küçük ve görüntü boyutu 640x480'den büyük olduğunda ortaya çıkan IllegalArgumentException sorunu düzeltildi. (I2a63c, b/150506192)
  • Açıkça beyan edilmiş herkese açık kaynaklar bulunmayan (ör. Public.xml aracılığıyla) kitaplıklardaki kaynaklar artık varsayılan olarak gizlidir. (Ia1dcc, b/170882230)

Kamera-Kamera2, Kamera Çekirdeği ve Kamera-Yaşam Döngüsü Sürümü 1.0.2

Sürüm 1.0.2

29 Eylül 2021

androidx.camera:camera-camera2:1.0.2, androidx.camera:camera-core:1.0.2 ve androidx.camera:camera-lifecycle:1.0.2 yayınlandı. 1.0.2 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Çekilen fotoğrafların MAXIMIZE_QUALITY modunda bulanıklaştırılması sorununu düzeltin. (I173a9, b/193823892)
  • Flash ile yakalanan görüntülerin birçok cihazda koyu renk olması sorunu düzeltildi. (I4e510)

Kamera-Kamera2, Kamera Çekirdeği ve Kamera-Yaşam Döngüsü Sürümü 1.0.1

Sürüm 1.0.1

21 Temmuz 2021

androidx.camera:camera-camera2:1.0.1, androidx.camera:camera-core:1.0.1 ve androidx.camera:camera-lifecycle:1.0.1 yayınlandı. 1.0.1 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • ListenableFuture öğesinin setZoomRatio ve setLinearZoom öğelerinin bazı Android 11 cihazlarda (I716d7) tamamlayamaması sorunu giderildi

  • Kameranın bazı cihazlarda kamera kapatılırken takılması ve siyah önizlemeye neden olması sorunu düzeltildi. (I34c99)

Kamera-Kamera2, Kamera Çekirdeği ve Kamera-Yaşam Döngüsü Sürümü 1.0.0

Sürüm 1.0.0

5 Mayıs 2021

androidx.camera:camera-camera2:1.0.0, androidx.camera:camera-core:1.0.0 ve androidx.camera:camera-lifecycle:1.0.0 yayınlandı. 1.0.0 sürümü bu kayıtları içerir.

1.0.0'ın temel özellikleri

  • CameraX; Preview, ImageCapture ve Analysis'i destekler
  • CameraX, kamera yaşam döngüsünü kullanımı kolay bir API ile yönetir
  • CameraX, Android Kamera Ekosistemi'ndeki birçok sorunu düzelten bir uyumluluk katmanı sağlamayı hedefliyor

Bilinen Sorunlar

Sürüm 1.0.0-rc05

21 Nisan 2021

androidx.camera:camera-camera2:1.0.0-rc05, androidx.camera:camera-core:1.0.0-rc05 ve androidx.camera:camera-lifecycle:1.0.0-rc05 yayınlandı. 1.0.0-rc05 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Flaş Açık/Otomatik olarak görüntü yakalama özelliği, Samsung Galaxy S7'de kaybolan resimleri çeker. (I30001)

Sürüm 1.0.0-rc04

24 Mart 2021

androidx.camera:camera-camera2:1.0.0-rc04, androidx.camera:camera-core:1.0.0-rc04 ve androidx.camera:camera-lifecycle:1.0.0-rc04 yayınlandı. 1.0.0-rc04 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

Sürüm 1.0.0-rc03

24 Şubat 2021

androidx.camera:camera-camera2:1.0.0-rc03, androidx.camera:camera-core:1.0.0-rc03 ve androidx.camera:camera-lifecycle:1.0.0-rc03 yayınlandı. 1.0.0-rc03 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • ProcessCameraProvider#getInstance dokümanındaki biçim hatasını düzeltin
  • CameraXConfig'de setAvailableCamerasLimiter kullanıldığında oluşan Robolectric testi hatası düzeltildi.
  • Resim çekmeden önce resmin kaydedildiği konumun doğrulamasını kaldırarak ImageCapture performansındaki regresyon düzeltildi. Bu değişiklik yapıldıktan sonra, kaydetme hedefi geçersizse, fotoğraf çekildikten sonra resmi kaydetmeye çalışacağından hata yanıtının alınması daha uzun sürer
  • Bu değişiklik, ImageAnalysis'te görüntü sırası maksimuma ulaştığı zaman istisnayı yakalar. Dolayısıyla, kilitlenme yerine donmuş veya yavaş ilerleyen diğer kullanım alanlarını fark edebilirsiniz (ör. donmuş/durak önizleme).
  • SM-G930T arka kamerada JPEG'lerde zaman zaman görülen bozuk resim verileri için geçici çözüm dahil edilmiştir. (I52001, b/159831206)
  • Bu değişiklik, ImageAnalysis'te görüntü sırası maksimuma ulaştığı zaman istisnayı yakalar. Dolayısıyla, kilitlenme yerine donmuş veya yavaşlamış önizleme gibi diğer kullanım alanlarının donduğunu fark edebilirsiniz. (Ic12da, b/175851631)
  • CameraXConfig'de setAvailableKamerasLimiter kullanıldığında oluşan Robolectric testi hatası düzeltildi. (Buz307)
  • Resim çekmeden önce resmin kaydedildiği konumun doğrulamasını kaldırarak ImageCapture performansındaki regresyon düzeltildi. Bu değişiklik yapıldıktan sonra, kaydetme hedefi geçersizse, fotoğraf çekildikten sonra resmi kaydetmeye çalışacağından hata yanıtının alınması daha uzun sürer. (I1fd4e, b/177061560)
  • "File" (Dosya) türü OutputFileOptions ile ilgili ImageCapture performansı gerilemesi düzeltildi. (I5164a, b/177061560)

Sürüm 1.0.0-rc02

27 Ocak 2021

androidx.camera:camera-camera2:1.0.0-rc02, androidx.camera:camera-core:1.0.0-rc02 ve androidx.camera:camera-lifecycle:1.0.0-rc02 yayınlandı. 1.0.0-rc02 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Desteklenen tüm önizleme boyutları 640x480'den küçük ve görüntü boyutu 640x480'den büyük olduğunda ortaya çıkan IllegalArgumentException sorunu düzeltildi. (b/150506192)
  • Kamerayı yeniden açma denemesi sayısını sınırlayın. Kamerayı açarken bazı sorunlardan kurtulmaya çalışırken CameraX, artık kamerayı süresiz olarak yeniden açmaya çalışmaz. 10 saniye bekledikten sonra kamerayı durdurur.I435d2

  • Önizlemenin desteklediği tüm boyutların 640x480'den küçük ve görüntü boyutu 640x480'den büyük olduğunda ortaya çıkan IllegalArgumentException sorunu düzeltildi. (I2a63c, b/150506192)

Sürüm 1.0.0-rc01

16 Aralık 2020

androidx.camera:camera-camera2:1.0.0-rc01, androidx.camera:camera-core:1.0.0-rc01 ve androidx.camera:camera-lifecycle:1.0.0-rc01 yayınlandı. 1.0.0-rc01 sürümü bu kayıtları içerir.

API Değişiklikleri

  • CameraInfo'yu almak için CameraFilter ve Camera2Filter değiştirildi. (I6883d)
  • Camera2 API'leriyle dinamik olarak birlikte çalışılabilmesi için Camera2KameraKontrolü deneysel sınıfı eklendi. (I45cf3)
  • Camera2KameraInfo#fromKameraInfo adlı cihazın adı #from olarak değiştirildi. (Ia2bd6)
  • Uygulamaların, kullanılmayan kameraların başlatılmasını önleyerek başlatma gecikmesini optimize etmesine olanak tanımak için CameraXConfig'e deneysel bir setAvailableKamerasLimiter API eklendi. (I6cf88)
  • CameraX günlükleri için minimum günlük kaydı düzeyinin ayarlanmasına olanak tanımak amacıyla CameraXConfig.Builder#setMinimumLoggingLevel() deneysel yöntemi eklendi. Ayarlanmadığında varsayılan olarak Log#DEBUG olur. (Ic3245)

Hata Düzeltmeleri

  • SM-G930V arka kamerada JPEG'lerde ara sıra görülen bozuk görüntü verileri için geçici çözüm dahil edilmiştir. (I5aca5, b/159831206)
  • Samsung SM-A716 cihazlarda flaş her zaman/açıkken, ortam karanlıkken resim çekmenin sonuç almaması sorunu düzeltildi. (If98b2, b/172036589)
  • Preview.setSurfaceProvider(null) çağrısı yapılarak önizlemenin durdurulamamasına yol açan sorun giderildi. (I3ac18)
  • Bazı cihazlarda 4:3 oranında resim çekerken yaşanan yön sorunu düzeltildi. (I0e3fb, b/171492111)

Kamera Kamerası2, Çekirdek ve Yaşam Döngüsü Sürümü 1.0.0-beta12

11 Kasım 2020

androidx.camera:camera-camera2:1.0.0-beta12, androidx.camera:camera-core:1.0.0-beta12 ve androidx.camera:camera-lifecycle:1.0.0-beta12 yayınlandı. 1.0.0-beta12 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Samsung A3 cihazlarda otomatik flaş AE modu ile fotoğraf çekerken yaşanan kilitlenmeyi düzeltmek için Samsung A3 cihazlarda otomatik flaş devre dışı bırakıldı. (Ia5fe3, b/157535165)
  • Android L (API düzeyleri 21 ve 22) çalıştıran Nexus 4 cihazlarda önizlemenin uzatılması sorunu düzeltildi. (I4d407, b/158749159)
  • OnImageCapturedCallback#onCaptureSuccess temel sınıf uygulaması artık resmi kapatmıyor. Bunun amacı, geliştiricilerin beklenmedik davranış göstermesini engellemektir. Geliştiriciler resmi kapatmak için super.onCaptureSuccess altyapısına güvenmemelidir. (Ifbf9c)
  • Deneysel ek açıklamanın Androidx varyantı, Kotlin ile denklik sağlamak için kullanımdan kaldırılmıştır. Bunun yerine RequiresOptIn ek açıklaması getirildi ve Java'ya yönelik linter hem yeni Kotlin ek açıklamasını hem de yeni androidx varyantını destekleyecek şekilde güncellendi. (I52495, b/151331381)

Camera-Kamera2 Sürüm 1.0.0-beta11

14 Ekim 2020

androidx.camera:camera-camera2:1.0.0-beta11 yayınlandı. 1.0.0-beta11 sürümü bu kayıtları içerir.

Yeni Özellikler

  • Android 11 veya sonraki sürümlerin yüklü olduğu, geçerli CONTROL_ZOOM_RATIO_RANGE sürümünü içeren cihazlarda yakınlaştırma için Android 11 CONTROL_ZOOM_RATIO API'sini destekler. (I62cc6)

Hata Düzeltmeleri

  • Kamera kimliği tam sayı olmayan bir kamera kimliği olduğunda ortaya çıkan NumberFormatException sorunu düzeltildi. (Ib2228)
  • CameraX başlatma ve bindToLifecycle'ın gecikme süresi iyileştirildi (I61dc5)
  • Kullanım Alanları oluşturma işleminin tamamlanması için CameraX'in başlatılması gerekmez. Herkese açık API için ProcessCameraProvider.bindToLifecycle() olan bir Camera örneğine eklendikten sonra, uygulamaya özel tüm yapılandırmalar UseCase'da ayarlanır. (Ia5411)
  • <UseCase>.getTargetRotation(), Builder veya UseCase'da bir targetRotation ayarlanmamışsa Kamera örneğine eklenmeden önce çağrılırsa Surface.ROTATION_0 değerini döndürür. (I80fcd)

Kamera Çekirdeği Sürümü 1.0.0-beta11

14 Ekim 2020

androidx.camera:camera-core:1.0.0-beta11 yayınlandı. 1.0.0-beta11 sürümü bu kayıtları içerir.

Yeni Özellikler - Geçerli CONTROL_ZOOM_RATIO_RANGE içeren Android 11 veya sonraki sürümlerin yüklü olduğu cihazlarda yakınlaştırma için Android 11 CONTROL_ZOOM_RATIO API'sini destekler. (I62cc6)

Hata Düzeltmeleri

  • Kamera kimliği tam sayı olmayan bir kamera kimliği olduğunda ortaya çıkan NumberFormatException sorunu düzeltildi. (Ib2228)
  • Kullanım Alanları oluşturma işleminin tamamlanması için CameraX'in başlatılması gerekmez. Herkese açık API için ProcessCameraProvider.bindToLifecycle() olan bir Camera örneğine eklendikten sonra, uygulamaya özel tüm yapılandırmalar UseCase'da ayarlanır. (Ia5411)
  • <UseCase>.getTargetRotation(), Builder veya UseCase'da bir targetRotation ayarlanmamışsa Kamera örneğine eklenmeden önce çağrılırsa Surface.ROTATION_0 değerini döndürür. (I80fcd)

Kamera Çekirdeği Sürümü 1.0.0-beta10

23 Eylül 2020

androidx.camera:camera-core:1.0.0-beta10 yayınlandı. 1.0.0-beta10 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Resim yakalama için dosya kaydetme hedefini doğrulamadaki hata düzeltildi (I8c565, b/167697553)

Camera-Kamera2 Sürüm 1.0.0-beta10

23 Eylül 2020

androidx.camera:camera-camera2:1.0.0-beta10 yayınlandı. 1.0.0-beta10 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

Kamera-Kamera2 Sürüm 1.0.0-beta09

16 Eylül 2020

androidx.camera:camera-camera2:1.0.0-beta09 yayınlandı. 1.0.0-beta09 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Camera2 CameraInfo, statik yöntemler sağlamak yerine Camera2 ile ilgili bilgileri almak için oluşturulduğunda bir CameraInfo örneğini alır. (I5b844)

Hata Düzeltmeleri

  • Tablet cihazlarda hedef en boy oranı sorunu düzeltildi. Hedef en boy oranı AspectRatio.RATIO_16_9 olarak ayarlandığında 16:9 boyutu seçilmelidir. (Ib7fcf, b/151969438)
  • Uygulamanın CameraFeatures oluşturulurken meydana gelen AssertionError'u düzgün şekilde işleyebilmesi için InitializationException sağlayın. (I89c8c, b/160524721)
  • Pozlama Telafisi için deneysel arayüzler eklendi (If96c7)

Kamera Çekirdeği Sürümü 1.0.0-beta09

16 Eylül 2020

androidx.camera:camera-core:1.0.0-beta09 yayınlandı. 1.0.0-beta09 sürümü bu kayıtları içerir.

API Değişiklikleri

  • UseCaseGroup'ta görüntü alanının null olmayan olarak işaretlenmesi hatası düzeltildi. Geliştiriciler, görünüm ayarlamadan görüntü alanı oluşturabilmelidir. (Ie3d2e)
  • ExposureCompensation (If96c7) için deneysel arayüzler eklendi
  • Önizleme için rastgele hedef rotasyonuna izin ver. Dönüşüm bilgileri yeni bir TranformationInfoListener geri çağırması aracılığıyla hesaplanıp kullanıcıya anında gönderilir. (I21470)

Hata Düzeltmeleri

  • Bazı cihazlarda flaşın kapanmaması sorunu giderildi. Fotoğraf çekmek için flaş modu FLASH_MODE_ON olarak ayarlandığında bu sorun, flaş tetiklendiğinde FLASH_MODE_OFF olarak değiştirilir. Belirtiler, fener modunun etkin olması gibidir. (Ib4451, b/162568128)
  • Uzantı efekti etkinse ve tedarikçi firma kitaplığı uygulamasının çıkış yüzeyinde özel bir işlem yapması gerekiyorsa PreviewView, TextureView'u kullanmaya zorlandı. (I0c3cc)
  • ProcessCameraProvider.getInstance(Context) öğesine bir etkinlik/parça bağlamı aktarıldığında oluşan etkinlik/parça sızıntısı düzeltildi.

Bilinen Sorunlar

  • ViewPort ayarlandığında, HAL'de görüntü arabelleğini döndüren cihazlarda ImageCapture'ın kırpma dikili yanlış olabilir. Bu durum bir sonraki sürümde düzeltilecektir.

Kamera-Kamera2 Sürüm 1.0.0-beta08

19 Ağustos 2020

androidx.camera:camera-camera2:1.0.0-beta08 yayınlandı. 1.0.0-beta08 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Ana iş parçacığında hızlı bir şekilde çalışması için bindToLifecycle optimize edildi. (I1d57e)
  • DisplayOrientedMeteringPointFactory, CameraSelector yerine bir CameraInfo örneğini alır. Böylece, fabrikanın hangi Kamera için noktalar oluşturacağı doğrudan bir eşleme olur. DisplayOrientedMeteringPointFactory kullanan tüm sınıflar, CameraSelector yerine bir CameraInfo örneğini de alır. (I400c1)
  • Hedef çözünürlük ayarı 2016x1080 olduğunda ve başka bir 1920x1080 16:9 boyutu desteklenirken 16:9 mod16 boyutunun (864x480) seçilmesine neden olan otomatik çözünürlük en boy oranı boyut gruplandırma sorunu düzeltildi. (I53167, b/159363774)
  • Yarışma durumuna göre çalışamadığı durumlarda CameraControl sorununu düzeltin (I2279f, b/152333890, b/160714166)

Kamera Çekirdeği Sürümü 1.0.0-beta08

19 Ağustos 2020

androidx.camera:camera-core:1.0.0-beta08 yayınlandı. 1.0.0-beta08 sürümü bu kayıtları içerir.

API Değişiklikleri

  • DisplayOrientedMeteringPointFactory, CameraSelector yerine CameraInfo örneğini alır. Bu nedenle, fabrikanın hangi Kamera için puan oluşturacağı doğrudan eşleme olur. DisplayOrientedMeteringPointFactory kullanan tüm sınıflar da CameraSelector yerine CameraInfo örneğini alır. (I400c1)

Hata Düzeltmeleri

  • Görüntü çekmek için meta verilerde kamera yönüne bağlı olarak yatay çevirme işaretinin üzerine yazın. (I28499)
  • Context.getApplicationContext() kaynağından uygulama nesnesi döndürmeyen bir Bağlam kullanılırken başlatma artık kilitlenmemelidir. (I3d3c9, b/160817073)

Kamera-Kamera2 Sürüm 1.0.0-beta07

22 Temmuz 2020

androidx.camera:camera-camera2:1.0.0-beta07 yayınlandı. 1.0.0-beta07 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Android 5.0 eski cihazda önizlemenin uzatılması sorunu düzeltildi. (I0c03a)
  • Bazı cihazlarda WYSIWYG sorununa neden olacak, JPEG tarafından desteklenen bazı boyutlar hariç tutuldu. (Ib5128)

Kamera Çekirdeği Sürümü 1.0.0-beta07

22 Temmuz 2020

androidx.camera:camera-core:1.0.0-beta07 yayınlandı. 1.0.0-beta07 sürümü bu kayıtları içerir.

API Değişiklikleri

  • FIT_CENTER, FIT_START ve FIT_END sığdırma stilini FIT ile birleştirin. FITDöndürülen kırpma çerçevesinin mümkün olan maksimum sensör genişliği olacağı anlamına gelir. (Ia73c3)
  • Önizlemenin kırpma çerçevesi görüntü alanı tarafından yapılandırılır. Son kullanıcılar yalnızca kırpma alanının kapsadığı alanları görmelidir. (I142a4)

Hata Düzeltmeleri

  • Android 5.0 eski cihazda önizlemenin uzatılması sorunu düzeltildi. (I0c03a)
  • Kullanım alanları kaldırılırken karşılaşılan ConcurrentModificationException istisna sorunu düzeltildi. (I371c0)

Camera-Kamera2 Sürüm 1.0.0-beta06

24 Haziran 2020

androidx.camera:camera-camera2:1.0.0-beta06 yayınlandı. 1.0.0-beta06 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Kameraları, kamera kimliğine ve KameraÖzelliklerine göre filtrelemek için deneysel arayüzler eklendi. (I28f61)

Hata Düzeltmeleri

  • Samsung Galaxy S7'de startFocusAndMetering işlevinin düzgün şekilde odaklanmaması sorunu düzeltildi. (If3be7, b/159039233)
  • Uygulamadan çıkıldıktan sonra kameranın kapatılmaması sorununu düzeltin. (I7a7b3)
  • PreviewView'un SurfaceView uygulamasını kullanırken tekrarlanan kamera geçişi kesintilerini düzeltme (I920ce)
  • Belirtilen MeteringPoint'ten hiçbiri geçerli sayaç dikdörtgenleri oluşturamazsa CameraControl#startFocusAndMetering başarısız olur. (Id53ce)

Kamera Çekirdeği Sürümü 1.0.0-beta06

24 Haziran 2020

androidx.camera:camera-core:1.0.0-beta06 yayınlandı. 1.0.0-beta06 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Kameraları, kamera kimliğine ve KameraÖzelliklerine göre filtrelemek için deneysel arayüzler eklendi. (I28f61)

Hata Düzeltmeleri

  • CameraX artık ProcessCameraProvider#getInstance() çağrısından önce ProcessCameraProvider#configureInstance() ile yapılandırılabilir. Bu işlem, uygulamanın Uygulama sınıfında CameraXConfig.Provider uygulamasına gerek kalmadan CameraXConfig öğesinin özelleştirilmesine olanak tanır. (Ia1a8d)
  • Belirtilen MeteringPoint'ten hiçbiri geçerli sayaç dikdörtgenleri oluşturamazsa CameraControl#startFocusAndMetering başarısız olur. (Id53ce)

Kamera-Kamera2 Sürüm 1.0.0-beta05

10 Haziran 2020

androidx.camera:camera-camera2:1.0.0-beta05 yayınlandı. 1.0.0-beta05 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Telefon Rahatsız Etmeyin modundayken CameraX, uygulama başlatılırken oluşan kilitlenme düzeltildi. InitializationException, uygulamayı kilitlemek yerine başlatma sonucunun ListenableFuture değerine ayarlanacak bir CameraUnavailableException içerir. (I9909a, b/149413835)
  • CONTROL_AF_STATE boş olan cihazlarda startFocusAndMetering çağrılırken yaşanan kilitlenme düzeltildi. (Ife55e, b/157084254)

Kamera Çekirdeği Sürümü 1.0.0-beta05

10 Haziran 2020

androidx.camera:camera-core:1.0.0-beta05 yayınlandı. 1.0.0-beta05 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Telefon Rahatsız Etmeyin modundayken CameraX, uygulama başlatılırken oluşan kilitlenme düzeltildi. InitializationException içeren bir CameraUnavailableException, uygulamayı kilitlemek yerine başlatma sonucunun ListenableFuture değerine ayarlanır. (I9909a, b/149413835)

Hata Düzeltmeleri

  • setTargetResolution ve setTargetRotation JavaScript'leri güncellendi. (Iae16f)

Kamera-Kamera2 Sürüm 1.0.0-beta04

27 Mayıs 2020

androidx.camera:camera-camera2:1.0.0-beta04 yayınlandı. 1.0.0-beta04 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • İzin verilen uygulamalar, Camera2Interop aracılığıyla kamera2 yakalama isteği parametrelerini kilitlenmeye neden olmadan ayarlamalıdır. Parametrelerin geçersiz kılınmasından kaynaklanan sorunlar varsa lütfen bunu unutmayın. Camera2Interop kullanarak parametreleri geçersiz kılarken kararlılık ve davranış garanti edilmez. (Ibe5a1, b/149103700)
  • Gerçek olmayan bir yerel ayar kullanan bir cihazda uygulama kullanılırken otomatik başlatma sabittir. (I3bef3, b/154767663)
  • Ayrı kullanım alanıyla ilgili hata günlüğü, Camera2KameraImpl'deki bir hata ayıklama günlüğüne dönüştürüldü. (I1a565, b/154422490)
  • Flaş etkinleşse bile bazen çekilen resmin çok karanlık olması sorunu düzeltildi. (I5d9fa, b/149729613)
  • ImageProxy içindeki ImageCapture kaynağından gelen arabelleğin geri sarılmadığı hata düzeltildi (I0c455, b/153249512)
  • Yalnızca Resim Yakalama özelliğinin bağlanmasıyla ilgili sorunlar düzeltildi: (1) MAX_QUALITY ile fotoğraf çekilemedi; (2) Otomatik pozlama çalışmadığı için kötü Resim kalitesi oluşturuldu. (I17782, b/145326998)
  • CameraX, kamerayı çalan başka bir süreç veya kod yolu ile bağlantısı kesildiğinde kamerayı yeniden açma güvenilirliği artırıldı (I1fbc3, b/153714651)

Kamera Çekirdeği Sürümü 1.0.0-beta04

27 Mayıs 2020

androidx.camera:camera-core:1.0.0-beta04 yayınlandı. 1.0.0-beta04 sürümü bu kayıtları içerir.

API Değişiklikleri

  • CameraX kamera grubu tarafından dahili olarak kullanılan işleyiciyi ayarlamak için CameraXConfig.Builder#setSchedulerHandler() adlı deneysel bir API ekler. CameraXConfig.Builder#setCameraExecutor() ile birlikte bu yeni API, CameraX kamera yığını tarafından kullanılan iş parçacıkları üzerinde tam kontrol sahibi olmanızı sağlamalıdır. (I7bf32, b/121160431)

Hata Düzeltmeleri

  • ImageReaderProxy kapatıldıktan sonra ImageProxy öğesine erişildiği ImageAnalysis bölgesindeki kilitlenme sorunu düzeltildi. Bu aynı zamanda, ImageReaderProxy kapanmadan önce Analyzer tarafından alınan tüm ImageProxy öğelerinin kapatılmasını da sağlar. (I4b299, b/145956416, b/154155377, b/156357269)
  • CameraInfo parametresi PreviewView#createSurfaceProvider() öğesinden kaldırıldı, PreviewView artık bunu SurfaceRequest ürününden dahili olarak alıyor. (If18f0, b/154652477)
  • Gerçek olmayan bir yerel ayar kullanan bir cihazda uygulama kullanılırken otomatik başlatma sabittir. (I3bef3, b/154767663)
  • Flaş etkinleşse bile bazen çekilen resmin çok karanlık olması sorunu düzeltildi. (I5d9fa, b/149729613)
  • setInsightsr/clearAnalizr'a yapılan birden fazla çağrının analizcinin analiz için görüntü almamasına neden olduğu ImageAnalysis sorunu düzeltildi. (I6169f, b/151605317, b/153514544)
  • ImageProxy içindeki ImageCapture kaynağından gelen arabelleğin geri sarılmadığı hata düzeltildi (I0c455, b/153249512)
  • CameraManager ürününde desteklenenler listesindeki ilk kameranın her zaman kullanılacak şekilde seçilmemesi sorunu düzeltildi. (I4c624, b/153418028)
  • Preview.SurfaceProvider ayarının daha önce istenen yüzeyi bırakmamasından kaynaklanan aralıklı kilitlenme sorunu düzeltildi. “java.lang.IllegalStateException: Camera surface session should only fail with request cancellation” (I8e4e7, b/155936225)

Kamera-Kamera2 Sürüm 1.0.0-beta03

15 Nisan 2020

androidx.camera:camera-camera2:1.0.0-beta03 yayınlandı. 1.0.0-beta03 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • camera-core sürümünü destekleyen düzeltmeler

Kamera Çekirdeği Sürümü 1.0.0-beta03

15 Nisan 2020

androidx.camera:camera-core:1.0.0-beta03 yayınlandı. 1.0.0-beta03 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Beta03'te sıfır UseCase ile bindToLifecycle() çağrısının istisnai durumlara neden olacağı regresyon düzeltildi. Bu durum, UseCase bağlanmadan Camera öğesinin alınmasını engelledi.

Kamera-Kamera2 Sürüm 1.0.0-beta02

1 Nisan 2020

androidx.camera:camera-camera2:1.0.0-beta02 yayınlandı. 1.0.0-beta02 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • ImageCapture tarafından oluşturulan ImageProxy öğesindeki ImageInfo.getRotationDegrees(), EXIF yönü döndürme değeriyle eşleşecek şekilde düzeltildi. (Id4281, b/150802561)
  • Varsayılan CameraX/Kamera2 uygulamasını kullanmak için artık build.gradle içindeki CameraX bağımlılıklarının açıkça sıralanmasına gerek yoktur. Katı bağımlılıkların bildirilmesinin gerekli olduğu durumlarda, artık tüm CameraX bağımlılıkları derleme dosyasına eklenebilir. (I46e88)
  • Ekran boyutunun 640x480'den küçük olduğu cihazlarda ortaya çıkan IllegalArgumentException sorunu düzeltildi. (Ife3f2, b/150506192)
  • bindToLifecycle, yalnızca başarıyla bağlanırsa UseCase'i değiştirecek şekilde düzeltildi. Önceden, çözüm hesaplamaları yapmak için bindToLifecycle çağrılırken UseCase güncelleniyor. Artık hesaplamaları yapmak için UseCase'in güncellenmesine gerek yoktur (I78d9e)

Kamera Çekirdeği Sürümü 1.0.0-beta02

1 Nisan 2020

androidx.camera:camera-core:1.0.0-beta02 yayınlandı. 1.0.0-beta02 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • ImageCapture tarafından oluşturulan ImageProxy öğesindeki ImageInfo.getRotationDegrees(), EXIF yönü döndürme değeriyle eşleşecek şekilde düzeltildi. (Id4281, b/150802561)
  • bindToLifecycle, yalnızca başarıyla bağlanırsa UseCase'i değiştirecek şekilde düzeltildi. Önceden, çözüm hesaplamaları yapmak için bindToLifecycle çağrılırken UseCase güncelleniyor. Artık hesaplamaları yapmak için UseCase'in güncellenmesine gerek yoktur (I78d9e)
  • Preview.setSurfaceProvider() öğesi birden fazla kez çağrıldıktan sonra önizleme yüzeyi değiştiğinde Preview kullanım alanının yakalama oturumunun güncellenmemesi sorunu düzeltildi.

Camera-Kamera2 Sürüm 1.0.0-beta01

26 Şubat 2020

androidx.camera:camera-camera2:1.0.0-beta01 yayınlandı. 1.0.0-beta01 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • SurfaceRequest.setSurface(Surface) adı SurfaceRequest.provideSurface(Surface), SurfaceRequest.setWillNotComplete() alanı da SurfaceRequest.willNotProvideSurface() olarak yeniden adlandırıldı. (I224fe)
  • ImageCapture.setTargetRotation() kullanılarak hedef rotasyon değeri değiştirildikten sonra, kaydedilen bir resmin en boy oranının doğru olmamasıyla ilgili sorun düzeltildi. (I474ea, b/148763432)
  • Varsayılan CameraXConfig sağlayıcısını belirleyen işaretin korunarak ProGuard'ın etkinleştirildiği uygulama varyantlarının başlatılması düzeltildi. (I2d6c1)

Kamera Çekirdeği Sürümü 1.0.0-beta01

26 Şubat 2020

androidx.camera:camera-core:1.0.0-beta01 yayınlandı. 1.0.0-beta01 sürümü bu kayıtları içerir.

API Değişiklikleri

  • SurfaceRequest.provideSurface() alanındaki ListenableFuture öğesi, Executor ve Callback ile değiştirildi. Bu, provideSurface() ile ilgili istisnaların işlenmesini artık gerektirmeyip API'yi basitleştirir ve provideSurface() geri çağırmanın iptal edilememesini zorunlu kılar. Bunun amacı, yüzeylerin zamanından önce serbest bırakılmasından dolayı eski cihazlarda meydana gelen kilitlenmeleri önlemektir. SurfaceRequest.Result nesnesi artık bir SurfaceRequest öğesinin sağlanan Surface öğesini nasıl kullandığını izlemek için kullanılıyor. (I7854b)
  • SurfaceRequest.setSurface(Surface) öğesinin adı SurfaceRequest.provideSurface(Surface), SurfaceRequest.setWillNotComplete() adı ise SurfaceRequest.willNotProvideSurface() olarak değiştirildi. (I224fe)

Hata Düzeltmeleri

  • ImageCapture.setTargetRotation() kullanılarak hedef rotasyon değeri değiştirildikten sonra, kaydedilen bir resmin en boy oranının doğru olmamasıyla ilgili sorun düzeltildi. (I474ea, b/148763432)
  • Varsayılan CameraXConfig sağlayıcısını belirleyen işaretin korunarak ProGuard'ın etkinleştirildiği uygulama varyantlarının başlatılması düzeltildi. (I2d6c1)
  • Flash modu API'leriyle ilgili dokümanlar, olası değerleri içerecek şekilde güncellendi. (I4a3ec)

Camera-Kamera2 Sürüm 1.0.0-alfa10

10 Şubat 2020

androidx.camera:camera-camera2:1.0.0-alpha10 yayınlandı. Sürüm 1.0.0-alpha10 bu kayıtları içerir.

Hata Düzeltmeleri

  • Surface öğelerinin yalnızca Camera2 tarafından kullanım süresi boyunca saklanmasını sağlayarak INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY cihazlarda kararlılık iyileştirildi. (I9dac2)
  • CONTROL_AE_TARGET_FPS_RANGE doğru şekilde ayarlandığında ESKİ cihazlarda düşük ışıklı önizleme sorunu düzeltildi. (1224638)

Kamera Çekirdeği Sürümü 1.0.0-alfa10

10 Şubat 2020

androidx.camera:camera-core:1.0.0-alpha10 yayınlandı. Sürüm 1.0.0-alpha10 bu kayıtları içerir.

API Değişiklikleri

  • ImageCapture, resimlerin Uri ve OutputStream içine kaydedilmesine olanak tanıyacak şekilde güncellendi. Aşırı yüklenmiş takePicture yöntemleri tek bir yöntemde birleştirildi. Test uygulaması, standart örnek olarak Uri kullanacak şekilde güncellendi. (Ia3bec)
  • Preview.PreviewSurfaceProvider, Preview.SurfaceProvider olarak yeniden adlandırıldı. SurfaceProvider'ler artık geliştiricilerin kendi ListenableFuture modellerini oluşturmalarını gerektirmemektedir. Surface sağlama işlemi artık yeni SurfaceRequest nesnesi aracılığıyla gerçekleştirilmektedir. Preview, PreviewView gibi diğer sınıflarla eşlendiğinde Preview.getPreviewSurfaceProvider() yöntemi hatalı kullanım olasılığı nedeniyle kaldırıldı. (I20105)
  • getTargetRotation() ve getTargetName(), Preview koleksiyonuna eklendi. (Buz7)
  • getTargetRotation(), getBackpressureStrategy() ve getImageQueueDepth() ImageAnalysis koleksiyonuna eklendi. (I9d6d9)
  • getTargetRotation() ve getCaptureMode(), ImageCapture() koleksiyonuna eklendi (I5bc17)
  • ImageCapture.OnImageSavedCallback.onError() ve ImageCapture.OnImageCapturedCallback.onError() işlevlerinde daha önce iletilen bağımsız değişkenlerin yerini, önceden iletilen tüm bilgileri hâlâ içeren tek bir ImageCaptureException bağımsız değişkeni almıştır.
  • Daha önce ImageCapture.OnImageSavedCallback.onImageSaved() içinde iletilen dosya bağımsız değişkeni kaldırıldı. (I750d2)
  • Preview ve ImageCapture sınıfları final olarak işaretlendi. (I2500b)
  • getZoomRatio(), getMaxZoomRatio(), getMinZoomRatio() ve getLinearZoom() yöntemleriyle güncellenen API, getZoomState() ile birleşerek ZoomState örneği döndürdü.CameraInfo (İb19fe)
  • OPTION_TARGET_CLASS ve OPTION_TARGET_NAME API alanları, yalnızca dahili kitaplıkta kullanılmak üzere tasarlandığı için CameraXConfig alanından kaldırıldı. CameraXConfig.Builder kurucusu kaldırıldı. (I96912)
  • Uygulamanın CameraX'i ilk kullanıma hazırlamak için Application süresini uzatması zorunluluğu kaldırıldı. camera-camera2 yapısı uygulamanın build.gradle öğesinde bulunduğu sürece CameraX artık varsayılan bir Camera2 yapılandırmasıyla başlatılacaktır. (I58ff5) (b/146923574)

Camera-Kamera2 Sürüm 1.0.0-alpha09

22 Ocak 2020

androidx.camera:camera-camera2:1.0.0-alpha09 yayınlandı. Sürüm 1.0.0-alpha09 bu kayıtları içerir.

API değişiklikleri

  • Camera2 kamera kimliğini çıkarmak için Camera2 birlikte çalışabilirlik yolu eklenir. Camera2CameraInfo.extractCameraId() kullanarak CameraInfo cihazından kamera kimliğini çıkarabilirsiniz. Aşağıdaki kod örneğinde bunun nasıl kullanılacağı gösterilmektedir:

    Camera camera = provider.bindToLifecycle(...);
    String cameraId =
        Camera2CameraInfo.extractCameraId(camera.getCameraInfo());
    

    Camera2CameraInfo sınıfı için ExperimentalCamera2Interop markerClass.

Kamera Çekirdeği Sürümü 1.0.0-alpha09

22 Ocak 2020

androidx.camera:camera-core:1.0.0-alpha09 yayınlandı. Sürüm 1.0.0-alpha09 bu kayıtları içerir.

API değişiklikleri

  • SurfaceOrientedMeteringPointFactory parametresi useCaseForSurface, useCaseForAspectRatio olarak yeniden adlandırıldı ve referans belgeleri genişletildi.
  • FocusMeteringAction.Builder.from() yöntemlerinin yerini kurucular alır FocusMeteringAction.Builder().
  • DisplayOrientedMeteringPointFactory(android.content.Context, androidx.camera.core.CameraSelector, float, float) kaldırıldı. Uygulamalar, Display parametresini alıp geçerli ekrana geçen kurucuyu kullanmalıdır.
  • MeteringMode ve 3A İşaretleri ile Display parametresinin kullanımıyla ilgili odak ve ölçüm API'leri için Javadoc iyileştirmeleri.
  • setZoomRatio ve setLinearZoom referans dokümanları genişletildi.

Hata düzeltmeleri

  • Kameralar kapatılıp açıldığında "Önceden Koşul" kontrol hatasına neden olan sorunlar düzeltildi.
  • Flaş ve yakınlaştırma API'leri kullanılırken oluşabilecek bir ConcurrentModificationException düzeltildi.
  • Mod16 boyut boyutu mevcut olduğunda artık istenen çözünürlüğe daha yakın çözünürlükler seçmeyle ilgili sorun düzeltildi.
  • startFocusMetering ve cancelFocusMetering API'leri artık belgelendiği gibi, doğru zamanlamayla çalışır ve ortaya çıktıklarında potansiyel olarak hatalar döndürür.
  • Bu boyutları desteklemeyen bir cihazda, kırpma en boy oranıyla belirli bir hedef çözünürlük istendiğinde ortaya çıkan sorun düzeltildi. Artık mevcut olduğunda, orijinal isteği bağlamak için yeterli çözünürlüğe sahip kırpılmamış bir boyut seçilecektir.

Camera-Kamera2 Sürüm 1.0.0-alpha08

18 Aralık 2019

androidx.camera:camera-camera2:1.0.0-alpha08 yayınlandı. Sürüm 1.0.0-alpha08 bu kayıtları içerir.

Bilinen Sorunlar

  • Camera2 birlikte çalışabilirliği kullanılırken Camera2 yakalama isteği seçeneklerinin tümü çalışmaz. İstenen seçenek desteklenmiyorsa oturum başlatılamaz ve şuna benzer bir hata oluşabilir: 09-09 14:04:13.643 10117 26020 26036 E AndroidRuntime: java.lang.IllegalArgumentException: Unsupported session configuration combination

Hata Düzeltmeleri

  • API Seviye 21 ve 22 için kamera döndürüldükten veya değiştirildikten sonra önizleme siyah ekranının oluşmasına neden olan sorun düzeltildi.

API Değişiklikleri

  • Deneysel: Kamera kimliğini çıkarmak için Camera2 birlikte çalışabilirlik yolu eklendi.

Kamera Çekirdeği Sürümü 1.0.0-alpha08

18 Aralık 2019

androidx.camera:camera-core:1.0.0-alpha08 yayınlandı. Sürüm 1.0.0-alpha08 bu kayıtları içerir.

Bilinen Sorunlar

  • PreviewView veya CameraView kullanan uygulamaların en boy oranı önizlemesi yanlış olabilir. Bu işlem, Pixel2 gibi bazı TAM cihazlarda duraklatma veya devam ettirme işleminden sonra gerçekleşir.

Hata Düzeltmeleri

  • FocusMeteringAction ve CameraControl dokümanları güncellendi.
  • enableTorch() ve getTorchState() için TorchControl uygulandı.

API Değişiklikleri

  • IntDefs gizlendi ve IntDef sabitleri IntDef tanımının dışına taşındı.
  • rotationDegrees, OnImageCaptureCallback sınıfından ImageInfo sınıfına taşındı.
  • rotationDegrees, Analyzer sınıfından ImageInfo sınıfına taşındı.

Camera-Kamera2 Sürüm 1.0.0-alpha07

4 Aralık 2019

androidx.camera:camera-camera2:1.0.0-alpha07 yayınlandı. Kamera-camera2 sürümünün 1.0.0-alpha07 sürümü bu kayıtları içerir

  • Camera2Config artık CameraX için Camera2 tabanlı bir uygulamayı başlatma ve yapılandırmada kullanılabilir. Başlatma sırasında bunun nasıl kullanılacağıyla ilgili daha fazla bilgiyi sürüm notlarının kamera çekirdeği bölümünde bulabilirsiniz.
  • Camera2 birlikte çalışabilirlik işlevselliği artık deneysel olarak işaretlenmiş ve ayrı bir pakete (androidx.camera.camera2.interop.) taşındı.

Kamera Çekirdeği Sürümü 1.0.0-alpha07

4 Aralık 2019

androidx.camera:camera-core:1.0.0-alpha07 yayınlandı. Kamera çekirdeğinin 1.0.0-alpha07 sürümü bu kayıtları içerir

Beta programına hazırlanırken alfa sürümünde bazı önemli değişiklikler yapıldığını unutmayın. Değişiklikleri incelemenizi ve KameraX Google grubu ile ilgili geri bildirimlerinizi paylaşmanızı öneririz. Google Play Store'daki uygulamalarda CameraX kullanan geliştiricilerin, uygulamalarındaki kitaplığı yeni sürüme geçirmeden önce resmi Beta sürümünü beklemelerini öneririz.

API değişiklikleri

  • Önemli: CameraX'i başlatma durumu değişti. Uygulamalar CameraXConfig.Provider öğesini uygulamalı ve androidx.camera.camera2 tarafından sağlanan varsayılan Camera2Config kullanılmalıdır. Tipik bir kullanım:

    import androidx.camera.camera2.Camera2Config
    import androidx.camera.core.CameraXConfig
    
    public class MyCameraXApplication : Application(),  CameraXConfig.Provider {
        override fun getCameraXConfig(): CameraXConfig {
                return Camera2Config.defaultConfig(this)
        }
    }
    
  • CameraX sınıfı kaldırıldı. Daha önce CameraX sınıfı görüşmesi tarafından sağlanan bindToLifecycle(), unbind(), unbindAll(), isBound() ve hasCamera() artık ProcessCameraProvider üzerinden kullanılabilir.

  • İşlem başına ProcessCameraProvider örneği, ProcessCameraProvider.getInstance() statik yöntemi kullanılarak eşzamansız olarak elde edildi. Bu yöntem, tamamlandığında ProcessCameraProvider sağlayan dinlenebilir bir gelecek döndürür. Tipik bir kullanım için onCreate() olarak gösterilmektedir. Başlatma gecikmesini daha ileri bir zamana ertelemek için (örneğin, bir kullanıcı işleminin kamera kullanıcı arayüzünü açması gibi) etkinliğin yaşam döngüsünün ilerleyen zamanlarında getInstance() çağrıları yapabilirsiniz.

    import androidx.camera.lifecycle.ProcessCameraProvider
    import com.google.common.util.concurrent.ListenableFuture
    
    class MainActivity : AppCompatActivity() {
       private lateinit var cameraProviderFuture : ListenableFuture<ProcessCameraProvider>
       override fun onCreate(savedInstanceState: Bundle?) {
           cameraProviderFuture = ProcessCameraProvider.getInstance(this);
      }
    
  • getInstance() tarafından döndürülen ListenableFuture öğesine bir işleyici eklenebilir. Bu işlem, kamera sağlayıcısının Future.get() üzerinde engelleme olmadan Future konumundan alınabilmesini sağlar

    cameraProviderFuture.addListener(Runnable {
      val cameraProvider = cameraProviderFuture.get()
      cameraProvider.bindToLifecycle(...)
    }, ContextCompat.getMainExecutor(this))
    
  • Kamera seçimi artık kullanım durumuna göre değil, bir kamera seçici tarafından yapılıyor

    val cameraSelector = CameraSelector.Builder().requireLensFacing(LensFacing.BACK).build()
    
  • Yaşam döngüsü sahibi, kamera seçici ve kullanım alanları, CameraProvider.bindToLifecycle için belirtilen yaşam döngüsü sahibine bağlanır ve seçilen kamera için çalıştırılır.

    cameraProvider.bindToLifecycle(this as LifecycleOwner,
           cameraSelector, preview, imageAnalysis)
    
  • Kullanım alanı "Config" (Yapılandırma) sınıfları kaldırıldı. Bunun yerine, her bir kullanım alanı oluşturucusunda seçenekleri ayarlayarak kullanım alanlarını doğrudan oluşturun. Örnek:

    preview = Preview.Builder().setTargetAspectRatio(AspectRatio.RATIO_16_9).build()
    
  • Önizleme kullanım alanı, Android'in en iyi uygulamalarını sağlamak amacıyla uygulama tarafından oluşturulan ve yönetilen bir yüzeyi kabul edecek şekilde güncellendi. Kamera görünümü paketinde sağlanan PreviewView görünüm sınıfını kullanmanız önemle tavsiye edilir.

    preview.setPreviewSurfaceProvider(previewView.previewSurfaceProvider)
    
  • Uygulama tarafından yönetilen yüzey eklemeyle ilgili dokümanlara bakın. Böyle durumlarda uygulama, yüzeyin yaşam döngüsünü yönetir.

  • Önemli: Alınan görüntülerin kullanımı bittiğinde ImageAnalysis Analiz yöntemi uygulaması, alınan görüntülerde image.close() yöntemini çağırmalıdır. Aksi takdirde, karşı basınç ayarına bağlı olarak yeni görüntüler alınmayabilir veya kamera duraklayabilir. Ayrıntılar için referans belgelerine göz atın.

  • ImageAnalysis ImageReaderMode, intdef adlı karşı baskı stratejisi olarak değiştirildi.

  • ImageProxy.getImage(), deneme olarak işaretlendi. Uygulamalar, kullanıma, örneğin @androidx.camera.core.ExperimentalGetImage aracılığıyla ek açıklama eklemelidir

  • Analyzer için UIThread ek açıklama gereksinimi kaldırıldı.

  • ImageAnalysis.clearAnalyzer() işlevi, analiz aracını kaldırmak için eklenir.

  • Birden fazla yöntemi olan işleyiciler Callback olarak yeniden adlandırıldı:

    • ImageCapture.OnImageCapturedListener artık ImageCapture.OnImageCapturedCallback
    • ImageCapture.OnImageSavedListener artık ImageCapture.OnImageSavedCallback
    • VideoCapture.OnVideoSavedListener artık VideoCapture.OnVideoSavedCallback
  • Sıralamalar IntDef olarak değiştirildi

  • Yakınlaştırma kontrolleri eklendi:

    • CameraControl.setLinearZoom()
    • CameraControl.setZoomRatio()
    • CameraInfo.getLinearZoom()
    • CameraInfo.getMaxZoomRatio()
    • CameraInfo.getZoomRatio()
  • Flaş/flaş donanımının olup olmadığını belirlemek için CameraInfo.hasFlashUnit() eklendi.

  • CameraInfo.isFlashAvailable() kaldırıldı. Fener flaş işlevini geçersiz kılar. Daha fazla ayrıntıyı referans belgelerinde bulabilirsiniz.

  • ImageCapture.Metadata alanlarının yerini get/set/is erişimcileri aldı.

  • startFocusMetering ve cancelFocusMetering artık çağrının eşzamansız işlemini temsil eden ListenableFutures değerini döndürüyor.

  • Fabrikalar tarafından üretilen MeteringPoints, artık sayaç işlemleri için tutma yeri olarak kullanılabilir. Uygulamalar özel fabrikalar yerine mevcut fabrikaları kullanmalıdır.

Düzeltilen sorunlar

  • Devam ettirilirken fotoğraf çekerken yaşanan sorun düzeltildi (önceki bir duraklatma işlemi tamamlanmadan önce fotoğraf çekildikten sonra).
  • Bilinen Sorun: CameraControl.enableTorch() çalışıyor ancak döndürülen ListenableFuture<Void>, herhangi bir flash birimi olmasa bile her zaman complete(success) gelecek. Gelecekteki sürümlerde bu durum son davranışa düzeltilecek: Flash birimi olmadığında enableTorch(true) hemen başarısız olur (CaptureSession ürününe istek göndermez) ve TorchState Kapalı olarak kalır.
  • Bilinen Sorun: startFocusAndMetering ve cancelFocusAndMetering, odak sayacını başlatıp iptal eder, ancak belirtilen davranışı temsil etmeyen, hemen completed (success) bir gelecek döndürür. ListenableFuture<FocusMeteringResult> CameraControl.startFocusAndMetering() kaynağındaki FocusMeteringResult sahte bir sonuçtur. isFocusSuccessful(), her zaman "yanlış"tır ve amaçlanan, belgelenen davranıştan farklıdır.
  • Bilinen Sorun: PreviewView dokunma etkinlikleriyle kullanılmak üzere bir ölçüm noktası fabrikası geliştiriliyor. Özel olarak yönetilen yüzeyleri bağlayan uygulamalar şimdilik mevcut ölçüm noktası fabrikalarını kullanabilmektedir. Aksi takdirde, PreviewView için dokunma odaklanma işlevi kullanılamaz.

Kamera-Kamera2 ve Kamera Çekirdeği Sürümü 1.0.0-alpha06

9 Ekim 2019

androidx.camera:camera-camera2:1.0.0-alpha06 ve androidx.camera:camera-core:1.0.0-alpha06 yayınlandı. Bunlar, camera-camera2:1.0.0-alpha06 kapsamındaki taahhütler, camera-core:1.0.0-alpha06 kapsamındaki taahhütler ise bunlardır.

Yeni özellikler

En boy oranlarını ayarlamada yapılan değişiklikler:

  • setTargetAspectRatioMode() eklendi ve bir enum bağımsız değişkenini kabul ediyor. Bu, En Boy Oranı Modu'nu rastgele bir en boy oranı yerine RATIO_4_3 veya RATIO_16_9 seçenekleriyle ayarlar. Bu, herhangi bir en boy oranı yerine sadece belirli en boy oranlarının kameradan sağlandığı gerçeğini daha yakın bir şekilde yansıtmaktadır.
    • Şu anda yalnızca 16:9 ve 4:3 oranları kullanılabilir. 1:1 söz konusu olduğunda kamera yalnızca belirli cihazlarda ve daha sonra sınırlı çözünürlüklerde kullanılabilir. 1:1 arayüz veya işleme tasarlayan uygulamalar daha esnek 16:9 veya 4:3 seçenekleri kullanmalı ve görüntüyü kırparak bir alt bölgeyi işlemelidir.
    • Bu en boy oranları, maksimum sensör alanını kullanacak şekilde ayarlanmıştır.
  • Kullanım alanı yapılandırma API'lerine getTargetAspectRatio() eklendi. Böylece, kullanım alanı çıktısının hedeflendiği en boy oranı döndürüldü.
  • setTargetAspectRatio(Rational aspectRatio) yöntemi, ImageCapture için setTargetAspectRatioCustom(Rational aspectRatio) olarak değiştirildi. Ayarlandığında, ImageCapture çıktısı uygun şekilde kırpılır.

Yürütücü API'leri

  • Aşağıdaki işlevler, uygulamanın işlevin hangi yürütücüde çalışacağını kontrol etmesine olanak tanıyan bir yürütücü parametresini kabul eder.
    • Preview.setOnPreviewOutputUpdateListener() API'si. Yürütücü bu işlevde mevcut değilse ana iş parçacığında yürütülür.
    • Preview.setOnPreviewOutputUpdateListener
    • FocusMeteringAction.Builder.setAutoFocusCallback
    • ImageAnalysis.setAnalyzer
    • ImageCapture.takePicture
    • CameraView.takePicture
    • CameraView.startRecording
    • VideoCapture.startRecording

CameraInfo eklendi

  • Uygulamaların, CameraInfo'ya bakan bir lens olup olmadığını ve bu kamerada flaş olup olmadığını kontrol etmesini sağlayan CameraInfo ve bir getCameraInfo yöntemi eklendi. Örnek:

    try {
        CameraInfo cameraInfo = CameraX.getCameraInfo(currentCameraLensFacing);
        LiveData<Boolean> isFlashAvailable = cameraInfo.isFlashAvailable();
        flashToggle.setVisibility(isFlashAvailable.getValue() ? View.VISIBLE : View.INVISIBLE);
    } catch (CameraInfoUnavailableException e) {
        Log.w(TAG, "Cannot get flash available information", e);
        flashToggle.setVisibility(View.VISIBLE);
    }
    
  • CameraInfo.getSensorRotationDegrees() eklendi. Kamera sensörü yönünü cihazın doğal yönüne göre veya kolaylık sağlamak amacıyla Yüzey döndürme tarafından açıklanan yöne göre (doğal yöne göre bir yönü açıklar) sağlar.

API değişiklikleri ve hata düzeltmeleri

  • En Boy Oranları: Her kullanım alanı için uygulamalar setTargetResolution() veya setTargetAspectRatio() özelliklerinden yalnızca birini çağırmalıdır. Her ikisinin de aynı derleyicide çağrılması bir hata döndürür.
    • Genel olarak, uygulamanın kullanıcı arayüzü tasarımına bağlı olarak setTargetAspectRatio() kullanmanız önerilir. Belirli çözümler kullanım alanına bağlıdır. Örneğin, önizleme, ekran çözünürlüklerine yakındır ve yakalanan resim yüksek çözünürlüklü fotoğraflar sağlar. Daha fazla bilgi için otomatik çözümler tablosuna göz atın.
    • Minimum (işlemi kaydetmek için) veya maksimum çözünürlük (işleme ayrıntıları için) gibi daha spesifik durumlarda setTargetResolution() kullanın.
  • Executor API: setCallbackHandler() çağrısı, kullanım alanı yapılandırma API'lerinden kaldırıldı. Bunun yerine, uygulamalar, geri çağırma işlevi gören diğer çeşitli API'lerde bir parametre olarak çalıştırıcıyı ayarlayabilir.
  • Çeşitli işlevler için boş ek açıklamalar güncellendi.
  • Kamera açılırken java.lang.IllegalStateException at Camera$StateCallback.onError öğesinin titreşmesine neden olan bir sorun düzeltildi.
  • Uygulama daha büyük veya varsayılan çözünürlükler istediğinde engellemeli veya bulanık önizleme resmine neden olduğunda çözünürlüklerin çok küçük (640x480'den az) seçilmesiyle ilgili sorun düzeltildi. Özellikle daha düşük çözünürlük gerektiren uygulamalar bunları açıkça isteyebilir.
  • Başka bir kamera uygulamasını başlatan bir amaçtan döndükten sonra kameranın siyah ekran göstermesi (kamera başlatılamadı) sorunu giderildi.
  • Uygulamalar tekrar tekrar başlatıldığında veya durdurulduğunda aşağıdaki hataya neden olan hata düzeltildi; java.lang.IllegalArgumentException: CaptureRequest contains unconfigured Input/Output Surface!
  • ImageAnalysis devre dışı bırakılırken oluşan şu hata düzeltildi: java.lang.IllegalStateException: maxImages (4) has already been acquired, call #close before acquiring more.
  • Kamera bağlantısını kesme akışı için ek testler eklendi.
  • Arka arkaya kamera testleri çalıştırırken iyileştirilmiş test sistemi dayanıklılığı.

Kamera-Kamera2 ve Kamera Çekirdeği Sürümü 1.0.0-alpha05

5 Eylül 2019

androidx.camera:camera-camera2:1.0.0-alpha05 ve androidx.camera:camera-core:1.0.0-alpha05 yayınlandı. Bunlar, camera-camera2:1.0.0-alpha05'e dahil edilen taahhütler ve resiper-core:1.0.0-alpha05 kapsamındaki taahhütlerdir.

  • API Değişikliği: Yeniden adlandırılmış kullanım alanı hata değişkenleri:

    • ImageCapture.UseCaseError, ImageCapture.ImageCaptureError olarak yeniden adlandırıldı
    • VideoCapture.UseCaseError, VideoCapture.VideoCaptureError olarak yeniden adlandırıldı
  • Tap-to-Focus API'leri olan CameraControl API eklendi

    • Bir kamera için CameraX'ten CameraControl almak amacıyla lense dönük olarak seçilen API eklendi:

      CameraX.getCameraControl(LensFacing lensFacing)

    • Odaklamak için Dokunma'yı çalıştırmak üzere MeteringPointFactory, MeteringPoint, MeteringMode ve FocusMeteringAction eklendi:

      MeteringPointFactory factory = new SensorOrientedMeteringPointFactory(width, height);
      MeteringPoint point = factory.createPoint(x, y);
      FocusMeteringAction action = FocusMeteringAction.Builder.from(point,
                                       MeteringMode.AF_ONLY)
          .addPoint(point2, MeteringMode.AE_ONLY) // could have many
          .setAutoFocusCallback(new OnAutoFocusListener(){
              public void onFocusCompleted(boolean isSuccess) {
              }
          })
          // auto calling cancelFocusAndMetering in 5 sec.
          .setAutoCancelDuration(5, TimeUnit.Second)
          .build();
      
    • Odak sayacını başlatmak ve iptal etmek üzere CameraControl için API eklendi:

      getCameraControl(lensFacing).startFocusAndMetering(action); getCameraControl(lensFacing).cancelFocusAndMetering();

    • Dokunma koordinatlarını sensör koordinatlarına çevirmeye yardımcı olan Ölçüm Noktası Faktörleri için görünüm sınıflarına dayalı API'ler eklendi:

      MeteringPointFactory factory = new TextureViewMeteringPointFactory(textureView); MeteringPointFactory factory = new DisplayOrientedMeteringPointFactory(context, lensFacing, viewWidth, viewHeight);

  • Ana (UI) iş parçacığında aşağıdaki yöntemlerin çağrılmasını zorunlu kılın ve kullanılmadıklarında IllegalStateException etiketi verin. Gelecekteki sürümler diğer iş parçacıklarında kullanıma izin verecek ve serileştirmeyi sağlayacaktır.

    • CameraX.bindToLifecycle()
    • CameraX.unbind()
    • CameraX.unbindAll()
    • ImageAnalysis.setAnalyzer()
    • ImageAnalysis.getAnalyzer()
    • ImageAnalysis.removeAnalyzer()
    • Preview.removePreviewOutputListener()
    • Preview.getOnPreviewOutputUpdateListener()
    • Preview.setOnPreviewOutputUpdateListener()
  • Çeşitli yapılandırma ayarları artık boş parametreleri kabul etmektedir ve ilgili alıcılar boş değer döndürebilir.

  • AF/AE/AWB ayarlarını desteklemeyen emülatörlerde test yaparken yaşanan sorun düzeltildi.

  • Resim analiz edilirken döndürme sırasında oluşan kilitlenme hatası düzeltildi.

  • Önizlemenin başlangıçta siyah göründüğü (kamera verisi yok), döndürüldükten sonra veya ön ve arka kameralar arasında geçiş yapıldıktan sonra siyah görünmesi hatası düzeltildi.

  • Birden fazla eş zamanlı görüntü analizi kullanım alanı için test kaldırıldı. Uygulamalar, uyumluluğu sağlamak için yalnızca tek bir görüntü analizi kullanım alanı eklemelidir.

  • Kamera test paketine (WIP) sahte kamera için başlangıç robolektrik testleri eklendi.

  • Kapsama alanı net olmadığı/yanıltıcı olduğu için Camera2Inititalizer testi kaldırıldı.

Kamera-Kamera2 ve Kamera Çekirdeği Sürümü 1.0.0-alpha04

7 Ağustos 2019

androidx.camera:camera-camera2:1.0.0-alpha04 ve androidx.camera:camera-core:1.0.0-alpha04 yayınlandı. Sürüm 1.0.0-alpha04 bu kayıtları içerir.

Yeni Özellikler

En Boy Oranı ve Çözünürlük seçiminde yapılan değişiklikler

CameraX'in hedefi kamera oturumunu başarıyla başlatmaktır. Bu, CameraX'in ilk hedefi olarak çekim oturumu başlatmak için cihazın kapasitesine bağlı olarak çözünürlük/en boy oranlarından ödün vermesi anlamına gelir ve bu nedenle tam istekler dikkate alınmayabilir. Bunun nedeni aşağıdakilerden biri olabilir:

  • İstenen çözünürlüğü desteklemeyen cihazlar
  • Belirli çözünürlüklerin doğru çalışması için kullanılması gereken ESKİ cihazlar gibi uyumluluk sorunları
  • Bazı cihazlarda, belirli biçimler yalnızca belirli en boy oranlarında kullanılabilir
  • JPEG veya video kodlaması için "en yakın mod16" tercihi. Bkz. CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP

Oturumu CameraX oluşturup yönetse de döndürülen resim boyutlarını her zaman kodunuzdaki kullanım alanı çıktısında kontrol etmeniz ve uygun şekilde ayarlamanız gerekir.

API'yi daha anlaşılır hale getirmek için çözünürlüklerin ve en boy oranlarının ayarlanmasıyla ilgili bazı değişiklikler yapılmıştır:

  • Önizleme kullanım alanı artık ayarlanmadığında varsayılan 4:3 en boy oranına sahip kabul edilmektedir.
  • CameraX, cihazın kapasitesine bağlı olarak istenen çözünürlüklerde ve en boy oranlarında yapılan değişiklikleri dahili olarak dikkate alırken ilk olarak aynı en boy oranını korumaya çalışır (setTargetAspectRatio veya setTargetResolution çağrılarının herhangi biri tarafından belirlenir).
  • Çözünürlüğün "En yakın mod16" sürümü aynı en boy oranı olarak kabul edilir.

ImageAnalysis Engelleme Modu

  • ImageReaderMode.ACQUIRE_LATEST_IMAGE adlı uygulamanın davranışı artık engellenmiyor. Sıradaki en son resmi alır ancak kamera ardışık düzeninin engellenmemesi için kullanılmayan görüntüleri sürekli olarak siler.
  • Analiz aracı, ardışık düzeni durdurmadan tek bir görüntüyü süresiz olarak saklayabilir.
  • Uygulama, işlemi engelleyen bir yürütücü sağlıyorsa ImageAnalysis kullanım alanı bloke edilir.
  • Ayarlanan varsayılan yürütücü, dahili olarak engellemeyen bir yürütücü olarak davranır.

Hata Düzeltmeleri

  • Otomatik odaklama, otomatik pozlama ve otomatik beyaz dengesinin olmadığı cihazlarda resim yakalarken 3A yakınsaklığı beklenirken zaman aşımıyla ilgili sorunlar düzeltildi
  • ImageCapture ile hızlı resim çekerken yaşanan sorun düzeltildi. Hatayı düzeltir: java.lang.IllegalStateException: maxImages (2) has already been acquired
  • setLensFacing bir kullanım alanı için çağrılmadığında ve java.lang.IllegalArgumentException: Unable to get camera ID for use case sonucunu veren sorun düzeltildi.
  • ESKİ cihazın maksimum JPEG çözünürlüğü olarak belirli en boy oranı gerektirmesiyle ilgili sorun düzeltildi
  • Kamera açıkken uygulamanın arka plana alınmasıyla ilgili sorun düzeltildi
  • API < 25 ile ilgili sorun düzeltildi, checkAndUpdateEglState: invalid current EGLDisplay hatası kaldırıldı
  • Uzantıları etkinleştirdikten ve başlattıktan sonra önizlemenin bağlantısını kaldırmayla ilgili sorun düzeltildi
  • Kamera görünümü ve kamera uzantıları için derleme yapıları artık alfa sürümleri olarak yayınlanıyor

Kamera-Kamera2 ve Kamera Çekirdeği Sürümü 1.0.0-alpha03

2 Temmuz 2019

androidx.camera:camera-core:1.0.0-alpha03 ve androidx.camera:camera-camera2:1.0.0-alpha03 yayınlandı. Sürüm 1.0.0-alpha03 bu kayıtları içerir.

API Değişiklikleri

  • setTarget yapılandırma çağrılarında "target" için javadoc açıklaması eklendi

Kamera Çekirdeği

  • Hızlı açma/kapatma veya bağlama/bağlantıyı kaldırma sırasında yapılandırılmamış Giriş/Çıkış Yüzeyi kilitlenmesi düzeltildi
  • Yeni Vadeli İşlemler uygulamalarına geçiş
  • Daha sağlam testler için test düzeltmeleri
  • Temel entegrasyon testi artık fotoğrafların çekilme süresini gösteriyor
  • Yürütücüler için şirket içi uyumluluk sınıfı geliştirildi
  • Zamanlama test uygulaması görüntü yakalama işleminin tamamlanması için önceki işlemin tamamlanması bekleniyor ve kararlılık iyileştirildi

Uzantılar

  • Sürüm oluşturma kontrolleri eklendi
  • Ek test kapsamı - uzantı etkinliği geri çağırmaları
  • Dahili olarak karşılık gelen resim ve meta veriler için iyileştirmeler
  • Test uygulamasında mod değiştirmeyle ilgili düzeltmeler

Kamera-Kamera2 ve Kamera Çekirdeği Sürümü 1.0.0-alpha02

5 Haziran 2019

androidx.camera:camera-core:1.0.0-alpha02 ve androidx.camera:camera-camera2:1.0.0-alpha02 yayınlandı. 1.0.0-alpha02 sürümü bu kayıtları içerir.

Hata düzeltmeleri

  • Emülatör kullanılırken div sayısı sıfır sorunu düzeltildi
  • Bazı cihazlarda hızlı bir şekilde fotoğraf çekerken kullanım alanları hızlı bir şekilde kaldırılırken ve yeniden bağlanırken ortaya çıkan NullPointerException/Surface Abandoned hatası düzeltildi.
  • Yakalama isteği güncellemelerinin tüm yüzeyleri tutarlı bir şekilde etkilemesini sağlamak için dahili sorun düzeltildi.
  • Yeni uygulama örneklerinde kullanım alanlarını yeniden başlatırken gerçekleştirilen kararlılık iyileştirmeleri
  • API'de yürütücüleri desteklemeye hazırlanmak için dahili mimari değişiklikleri
  • CameraX sınıfı ve yaşam döngüsü yönetimi hakkında ek Javadoc açıklamaları
  • Antelope performans testi uygulaması için izlemeli test eklendi
  • Uygulamanın ProGuard yapılandırmasındaki "-keepattributes İmza" ihtiyacını kaldırma

Camera-Kamera2 ve Kamera Çekirdeği 1.0.0-alpha01

7 Mayıs 2019

androidx.camera:camera-core:1.0.0-alpha01 ve androidx.camera:camera-camera2:1.0.0-alpha01 yayınlandı. Sürüm 1.0.0-alpha01 bu kayıtları içerir.

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta11

14 Ekim 2020

androidx.camera:camera-lifecycle:1.0.0-beta11 yayınlandı. 1.0.0-beta11 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • <UseCase>.getTargetRotation(), Builder veya UseCase'da bir targetRotation ayarlanmamışsa Kamera örneğine eklenmeden önce çağrılırsa Surface.ROTATION_0 değerini döndürür. (I80fcd)

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta10

23 Eylül 2020

androidx.camera:camera-lifecycle:1.0.0-beta10 yayınlandı. 1.0.0-beta10 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta09

16 Eylül 2020

androidx.camera:camera-lifecycle:1.0.0-beta09 yayınlandı. 1.0.0-beta09 sürümü bu kayıtları içerir.

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta08

19 Ağustos 2020

androidx.camera:camera-lifecycle:1.0.0-beta08 yayınlandı. 1.0.0-beta08 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Context.getApplicationContext() kaynağından uygulama nesnesi döndürmeyen bir Bağlam kullanılırken başlatma artık kilitlenmemelidir. (I3d3c9, b/160817073)

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta07

22 Temmuz 2020

androidx.camera:camera-lifecycle:1.0.0-beta07 yayınlandı. 1.0.0-beta07 sürümü bu kayıtları içerir.

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta06

24 Haziran 2020

androidx.camera:camera-lifecycle:1.0.0-beta06 yayınlandı. 1.0.0-beta06 sürümü bu kayıtları içerir.

API Değişiklikleri

  • CameraX, artık ProcessKameraProvider#getInstance() çağrısı yapmadan önce ProcessKameraProvider#configureInstance() ile yapılandırılabilir. Bu şekilde, uygulamanın Application (Uygulama) sınıfında CameraXConfig.Provider'ın uygulanmasına gerek kalmadan CameraXConfig'in özelleştirilmesi sağlanır. (Ia1a8d)

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta05

10 Haziran 2020

androidx.camera:camera-lifecycle:1.0.0-beta05 yayınlandı. 1.0.0-beta05 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Telefon Rahatsız Etmeyin modundayken CameraX, uygulama başlatılırken oluşan kilitlenme düzeltildi. InitializationException içeren bir CameraUnavailableException, uygulamayı kilitlemek yerine başlatma sonucunun ListenableFuture değerine ayarlanır. (I9909a, b/149413835)

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta04

27 Mayıs 2020

androidx.camera:camera-lifecycle:1.0.0-beta04 yayınlandı. 1.0.0-beta04 sürümü bu kayıtları içerir.

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta03

15 Nisan 2020

androidx.camera:camera-lifecycle:1.0.0-beta03 yayınlandı. 1.0.0-beta03 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Beta03'te sıfır UseCase ile bindToLifecycle() çağrısının istisnai durumlara neden olacağı regresyon düzeltildi. Bu durum, UseCase bağlanmadan Camera öğesinin alınmasını engelledi.
  • camera-core sürümünü destekleyen düzeltmeler

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta01

26 Şubat 2020

androidx.camera:camera-lifecycle:1.0.0-beta01 yayınlandı. 1.0.0-beta01 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Başlatma sırasında ProcessCameraProvider alınırken varsayılan yapılandırmanın kullanıldığını ve Application genişletmesinin isteğe bağlı olduğunu belirten belgeler düzeltildi. (I5e395)

Kamera Yaşam Döngüsü Sürümü 1.0.0-beta02

1 Nisan 2020

androidx.camera:camera-lifecycle:1.0.0-beta02 yayınlandı. 1.0.0-beta02 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • camera-camera2:1.0.0-beta02 ve camera-core:1.0.0-beta02 yapılarındaki hata düzeltmelerini desteklemek için güncellendi.

Kamera-Yaşam Döngüsü Sürümü 1.0.0-alpha10

10 Şubat 2020

androidx.camera:camera-lifecycle:1.0.0-alpha10 yayınlandı. Sürüm 1.0.0-alpha10 bu kayıtları içerir.

API Değişiklikleri

  • BindToLifecycle'a @MainThread notu eklendi, tüm bağlantıları ve tüm bağlantıları kaldır yöntemleri eklendi. (I990d2)

Kamera-Yaşam Döngüsü Sürümü 1.0.0-alpha03

22 Ocak 2020

androidx.camera:camera-lifecycle:1.0.0-alpha03 yayınlandı. Sürüm 1.0.0-alpha03 bu kayıtları içerir.

Güncellemeler

  • Camera Core ve Camera2 değişikliklerini desteklemek için çeşitli düzeltmeler ve güncellemeler.

Kamera-Yaşam Döngüsü Sürümü 1.0.0-alpha02

18 Aralık 2019

androidx.camera:camera-lifecycle:1.0.0-alpha02 yayınlandı. 1.0.0-alpha02 sürümü bu kayıtları içerir.

Bağımlılık değişiklikleri

  • androidx.camera:camera-core:1.0.0-alpha08 kullanılacak şekilde güncellendi.

Kamera-Yaşam Döngüsü Sürümü 1.0.0-alpha01

4 Aralık 2019

androidx.camera:camera-lifecycle:1.0.0-alpha01 yayınlandı. Kamera yaşam döngüsünün 1.0.0-alpha01 sürümü bu kayıtları içerir

API notları

  • Kamera yaşam döngüsü yapısı eklendi. Bu yapıda LifeCycleCameraProvider arayüzü ve önceki CameraX sınıfının birçok işlevini temel alan ve getInstance() yöntemiyle elde edilen ProcessCameraProvider adlı bir uygulama sağlanır.
  • Uygulamalar, CameraX'i kullanmak için kamera-yaşam döngüsü kitaplığını içermelidir.
  • CameraX'in ProcessCameraProvider kullanılarak nasıl başlatılacağını öğrenmek için camera-core (kamera çekirdeği) bölümündeki notlara bakın.

Kamera Uzantıları ve Kamera Görünümü Sürüm 1.0.0

Sürüm 1.0.0-alpha32

15 Aralık 2021

androidx.camera:camera-extensions:1.0.0-alpha32 ve androidx.camera:camera-view:1.0.0-alpha32 yayınlandı. Sürüm 1.0.0-alpha32 bu kayıtları içerir.

API Değişiklikleri

  • İç sınıflardan/arayüzlerden gereksiz @RequiresApi(21) ek açıklamaları kaldırıldı. (I8e286, b/204917951)
  • Kamera uzantıları yapısı için API dosyalarını güncelleyin. (If683a, b/161377155)

Hata Düzeltmeleri

  • VideoCapture bağlanırken uygulamanın uzantı modlarını etkinleştirmesine izin verin. CameraX Uzantıları yalnızca ImageCapture ve Preview'yi destekler. VideoCapture henüz desteklenmiyor. Uygulama VideoCapture öğesini bağlar ve herhangi bir uzantı modunu etkinleştirirse IllegalArgumentException gönderilir. (I0d87b)
  • CameraSelector#filter artık sonuç kümesi boş olduğunda IllegalArgumentException atmıyor. (I27804)
  • ExtensionsManager#getInstance API, ListenableFuture değerini döndürdüğü için getInstanceAsync olarak yeniden adlandırıldı. İşlev adının eşzamansız son eki, eşzamansız bir işlev olduğunu açıkça gösterebilir. (I279d2)
  • Kullanıcılar ImageCapture kullanım alanında hangi boyutların desteklendiğini bilemediği ve döndürülen gecikme bilgilerinin maksimum yakalama çıktı boyutu mu yoksa giriş çözünürlüğü parametresi için mi olduğunu ayırt edemediği için ExtensionsManager#getEstimatedCaptureLatencyRange API'den çözünürlük parametresini kaldırın. (I74bb2)
  • ExtensionsManager işlevlerinin CameraProvider parametresini getInstance() API'ye taşıyın. Böylece kullanıcıların, ExtensionsManager işlevlerini her çağırırken CameraProvider parametresini girmelerine gerek kalmaz. (Ic7e48)

Sürüm 1.0.0-alpha31

17 Kasım 2021

androidx.camera:camera-extensions:1.0.0-alpha31 ve androidx.camera:camera-view:1.0.0-alpha31 yayınlandı. 1.0.0-alpha31 sürümü bu kayıtları içerir.

API Değişiklikleri

  • CameraSelector'a dayalı bir CameraSelector listesinin filtrelenmesi için CameraSelector#filter herkese açık API'ye eklendi. (I105d0)

Hata Düzeltmeleri

  • Belirli cihazlarda uzantı moduna hızlı bir şekilde geçilirken meydana gelen kilitlenme sorunu giderildi. (Iebbef)

Sürüm 1.0.0-alpha30

13 Ekim 2021

androidx.camera:camera-extensions:1.0.0-alpha30 ve androidx.camera:camera-view:1.0.0-alpha30 yayınlandı. Sürüm 1.0.0-alpha30 bu kayıtları içerir.

API Değişiklikleri

  • Tüm CameraX sınıflarına @RequiresApi(21) ek açıklaması eklendi ve AndroidManifest.xml'den minSdkVersion çıkarıldı. Bu, minSdkVersion 21'den az olan ancak API 21 ve üstünü kullanan kod yollarını koşullu olarak kullanmak isteyen uygulamalara kamera çekirdeğinin kolayca entegre edilmesini sağlar. MinSdkVersion 21 veya sonraki sürümleri çalıştıran uygulamalar için bu değişiklik için herhangi bir işlem yapılması gerekmez. (Ie7f2e, b/200599470)

Hata Düzeltmeleri

  • ProGuard etkinleştirildiğinde ortaya çıkan AbstractMethodError sorunu düzeltildi. (Iae468, b/201177844)

Sürüm 1.0.0-alfa29

29 Eylül 2021

androidx.camera:camera-extensions:1.0.0-alpha29 ve androidx.camera:camera-view:1.0.0-alpha29 yayınlandı. Sürüm 1.0.0-alpha29 bu kayıtları içerir.

API Değişiklikleri

  • API'ler artık deneysel olmadığından ExperimentalUseCaseGroup ek açıklaması kaldırılmıştır. (I01ef5)
  • RotationProvider#removeAllListeners() adlı kullanıcıyı kaldır. Lütfen bunun yerine RotationProvider#removeListener(...) politikasını kullanın. (Id9d4a)
  • RotationRecipientr sınıfı güncellendi: set/clear İşleyici, add/remove/removeAll olacak şekilde değiştirildi, varsayılan olarak ana iş parçacığını kullanan setListener varyasyonunu ve yöntem ek açıklamalarını kaldırın. (Ib1669)

Hata Düzeltmeleri

  • Uzantı modu tarafından yapılan işlemleri doğru bir şekilde sunmak için ExtensionMode#BEAUTY, FACE_RETOUCH olarak yeniden adlandırıldı. (I61f54, b/198515274)
  • Bir Etkinlikte birden fazla CameraController ve PreviewView kullanıldığında kameranın beklenmedik bir şekilde kapanması sorunu düzeltildi. (İbfd18, b/197539358)

Sürüm 1.0.0-alfa28

18 Ağustos 2021

androidx.camera:camera-extensions:1.0.0-alpha28 ve androidx.camera:camera-view:1.0.0-alpha28 yayınlandı. 1.0.0-alpha28 sürümü bu kayıtları içerir.

API Değişiklikleri

  • API'ler artık deneysel olmadığından ExperimentalUseCaseGroupLifecycle ek açıklaması kaldırılmıştır. (I17b85)
  • RotationListener yeniden düzenlendi ve RotationProvider olarak yeniden adlandırıldı. Biraz farklı bir API ile aynı özelliği sunmaya devam etmektedir. (Idffc5)
  • TAP_TO_FOCUS_UNSUCCESSFUL adlı kişiyi TAP_TO_FOCUS_NOT_FOCUSED ve TAP_TO_FOCUS_SUCCESSFUL adlı kişiyi TAP_TO_FOCUS_FOCUSED olarak yeniden adlandır. ÇıktıBoyutu son haline getirildi (I099fa)

Hata Düzeltmeleri

  • Kullanımdan kaldırılan <EffectName><UseCase>Extender sınıfları, ExtensionsErrorListener ve ilgili ExtensionsManager API'leri kaldırıldı. (I3b8c3)

Sürüm 1.0.0-alfa27

21 Temmuz 2021

androidx.camera:camera-extensions:1.0.0-alpha27 ve androidx.camera:camera-view:1.0.0-alpha27 yayınlandı. 1.0.0-alpha27 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Görüntü alanı API'si deneysel dışında bir seviyeye yükseltildi. API'nin deneysel ek açıklamasını kaldırın. (I717ea)
  • CoordinateTransform#getTransform dosyasının adı CoordinateTransform#transform olarak değiştirildi ve JavaDoc (I864ae) güncellendi

Hata Düzeltmeleri

  • E-posta Yaz kullanıcı arayüzüyle birlikte kullanıldığında PreviewView PERFORMANCE modunun uzaması sorunu düzeltildi. (Ie1137, b/183864890)

Sürüm 1.0.0-alfa26

30 Haziran 2021

androidx.camera:camera-extensions:1.0.0-alpha26 ve androidx.camera:camera-view:1.0.0-alpha26 yayınlandı. 1.0.0-alpha26 sürümü bu kayıtları içerir.

API Değişiklikleri

  • Odaklamak için dokunma işleminin en son sonucunu gösteren yeni bir CameraController#getTapToFocusState() yöntemi ekleyin. (Iaccb0)
  • CameraController'a daha fazla kamera çekirdeği özelliği ekleniyor: Hedef en boy oranı, hedef çözünürlük, yakalama modu, CameraControl ve özel yürütücüler için alıcılar/ayarlayıcılar. (Iea8f2)
  • Yüzey döndürme değişikliklerini alan bir RotationRecipientr sınıfı ekleyin. Bu ayar, cihaz sabit dikey/yatay moddayken hedef rotasyonu ayarlamak için kullanılabilir. (Ib278f)
  • ExtensionsManager sınıfında yeni getEstimateCaptureLatencyRange genel API'leri kullanıma sunuldu. (I6a8ec)
  • Kullanımdan Kaldırılan ExtensionsErrorListener. Şu anda bu arayüz yalnızca uzantı modları etkinleştirilirken bir Önizleme veya Görüntü Yakalama'nın eksik olup olmadığını izlemek için kullanılmaktadır. CameraX, uzantı işlevlerinin düzgün çalışması için otomatik olarak fazladan bir Önizleme veya ImageCapture ekler. Bundan sonra, bu arayüz aracılığıyla herhangi bir hata bildirilmez. (I47d9e)
  • Kullanıma sunulan yeni ExtensionsManager getInstance, isExtensionAvailable ve getExtensionEnabled CameraSelector herkese açık API'leri ile desteği sonlandırılmış eski <EffectName><UseCase>Extender sınıfları ve ilgili API'ler. (I329e6)

Sürüm 1.0.0-alfa25

2 Haziran 2021

androidx.camera:camera-extensions:1.0.0-alpha25 ve androidx.camera:camera-view:1.0.0-alpha25 yayınlandı. 1.0.0-alpha25 sürümü bu kayıtları içerir.

API Değişiklikleri

  • ExperimentalKameraFilter API'leri artık deneysel aşamada değil, resmi API'ler haline geldi. Ek açıklamalı Etkinleştirme olmadan kullanılabilir. (I4bc94)
  • Kullanım alanları arasında koordinatları dönüştüren bir yardımcı program ekleyin. Örnek kullanım: ImageAnalysis kullanım alanında algılanan koordinatları dönüştürme ve algılanan nesneyi önizlemede vurgulama. (I63ab1, b/137515129)
  • CameraView kaldırıldı. CameraView, CameraController ile değiştirildi. Taşıma işlemi için lütfen taşıma kılavuzuna bakın. (Id5005)

Hata Düzeltmeleri

  • ExperimentalUseCaseGroupLifecycle, ExperimentalUseCaseGroup ile değiştirildi. (I3b2ef, b/159033688)

Sürüm 1.0.0-alpha24

21 Nisan 2021

androidx.camera:camera-extensions:1.0.0-alpha24 ve androidx.camera:camera-view:1.0.0-alpha24 yayınlandı. Sürüm 1.0.0-alpha24 bu kayıtları içerir.

Hata Düzeltmeleri

  • @Experimental ek açıklaması, deneysel API'lerde @RequiresOptIn ile değiştirildi. Deneysel API'leri çağırmak için kullanımdan kaldırılan androidx.annotation.experimental.UseExperimental yerine androidx.annotation.OptIn kullanın. (Iff226)
  • Samsung J5 Prime'daki (Ib10b6) PreviewView uzatılmış sorunu düzeltildi

Kamera Uzantıları ve Görünüm Sürümü 1.0.0-alpha23

24 Mart 2021

androidx.camera:camera-extensions:1.0.0-alpha23 ve androidx.camera:camera-view:1.0.0-alpha23 yayınlandı. 1.0.0-alpha23 sürümü bu kayıtları içerir.

API Değişiklikleri

  • CameraView kullanımdan kaldırılıyor. Lütfen bunun yerine LifecycleCameraController politikasını kullanın. Taşıma rehberini (Idac2c) inceleyin
  • setLineZoom() öğesine FloatRange ek açıklaması eklendi (I69971)

Hata Düzeltmeleri

  • 1.0.0 yapılarına dayanarak kamera görünümü bağımlılıkları sabitlendi. Kamera görünümüne bağlı olarak, gradle'ın bağımlılık çözünürlüğü artık kamera çekirdeği, kamera-kamera2 ve kamera yaşam döngüsünün otomatik olarak en yeni 1.1.0 yapılarına yükseltilmesine neden olmayacak. Bununla birlikte, kamera görünümü açık bir şekilde 1.1.0 kullanacak şekilde ayarlanırsa bu yapılarla hâlâ uyumlu olacaktır. (Ic8fa1, b/181599852)
  • PreviewView'da Samsung A3 uzatılmış önizlemesi düzeltildi. (Iacb30, b/180121821)
  • Kamera başlatılmadan önce kamera seçicinin ayarlanamaması sorunu düzeltildi. (Ic8bd0)

Kamera Uzantıları ve Görünüm Sürümü 1.0.0-alpha22

24 Şubat 2021

androidx.camera:camera-extensions:1.0.0-alpha22 ve androidx.camera:camera-view:1.0.0-alpha22 yayınlandı. 1.0.0-alpha22 sürümü bu kayıtları içerir.

API Değişiklikleri

Hata Düzeltmeleri

  • Yalnızca Preview veya ImageCapture bağlı olduğunda sorunları bildirmek için ExtensionsErrorListener aracı düzeltildi. (I5ae39)

Kamera Uzantıları ve Görünüm Sürümü 1.0.0-alpha21

27 Ocak 2021

androidx.camera:camera-extensions:1.0.0-alpha21 ve androidx.camera:camera-view:1.0.0-alpha21 yayınlandı. 1.0.0-alpha21 sürümü bu kayıtları içerir.

Diğer kamera kitaplığı yapılarını desteklemek için kullanıma sunuluyor.

Kamera Uzantıları ve Görünüm Sürümü 1.0.0-alpha20

16 Aralık 2020

androidx.camera:camera-extensions:1.0.0-alpha20 ve androidx.camera:camera-view:1.0.0-alpha20 yayınlandı. Sürüm 1.0.0-alpha20 bu kayıtları içerir.

Diğer kamera kitaplığı yapılarını desteklemek için kullanıma sunuluyor.

Kamera Uzantıları ve Kamera Görünümü Sürümü 1.0.0-alpha19

11 Kasım 2020

androidx.camera:camera-extensions:1.0.0-alpha19 ve androidx.camera:camera-view:1.0.0-alpha19 yayınlandı. Sürüm 1.0.0-alpha19 bu kayıtları içerir.

Hata Düzeltmeleri

  • Kamera görünümüne @ExperimentalVideo ek açıklaması eklendi. Bu ek açıklama, özellikler tamamen geliştirildikçe değişebilen deneysel video işlevlerini açığa çıkaran API'leri işaretler. Bu API'leri kullanan tüm yöntemler, markerClass olarak ExperimentalVideo ile @UseExperimental ek açıklamasını kullanmalıdır. (I6d729)

Kamera Uzantıları Sürüm 1.0.0-alpha18

14 Ekim 2020

androidx.camera:camera-extensions:1.0.0-alpha18 yayınlandı. 1.0.0-alpha18 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • CameraX başlatma ve bindToLifecycle'ın gecikme süresi iyileştirildi (I61dc5)
  • <UseCase>.getTargetRotation(), Builder veya UseCase'da bir targetRotation ayarlanmamışsa Kamera örneğine eklenmeden önce çağrılırsa Surface.ROTATION_0 değerini döndürür. (I80fcd)

Camera-View Sürüm 1.0.0-alpha18

14 Ekim 2020

androidx.camera:camera-view:1.0.0-alpha18 yayınlandı. 1.0.0-alpha18 sürümü bu kayıtları içerir.

Diğer kamera kitaplığı yapılarını desteklemek için kullanıma sunuluyor.

Kamera Uzantıları Sürüm 1.0.0-alpha17

23 Eylül 2020

androidx.camera:camera-extensions:1.0.0-alpha17 yayınlandı. 1.0.0-alpha17 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

Camera-View Sürüm 1.0.0-alpha17

23 Eylül 2020

androidx.camera:camera-view:1.0.0-alpha17 yayınlandı. 1.0.0-alpha17 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

Kamera Uzantıları Sürüm 1.0.0-alpha16

16 Eylül 2020

androidx.camera:camera-extensions:1.0.0-alpha16 yayınlandı. 1.0.0-alpha16 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Kamera örneklerinde uzantıları etkinleştirmek ve sorgulamak için kullanılan bir Extensions nesnesi almak için ExtensionsManager yöntemine eklendi (I4fb7e)

Camera-View Sürüm 1.0.0-alpha16

16 Eylül 2020

androidx.camera:camera-view:1.0.0-alpha16 yayınlandı. 1.0.0-alpha16 sürümü bu kayıtları içerir.

API Değişiklikleri

  • PreviewView#setDeviceRotationForRemoteDisplayMode() ve PreviewView#getDeviceRotationForRemoteDisplayMode() kaldırıldı. Bu iki yöntem, istenen rotasyon ekran döndürme olmadığı zaman (ör. uzaktan görüntüleme), önizleme döndürmesinin özelleştirilmesi içindir. Görüntülü olmayan önizleme rotasyonunu şimdi işlemek için Preview#setTargetRotation() ve yeni eklenen PreviewView#getViewPort(targetRotation) ile istediğiniz rotasyonu ayarlayın. (Ib62cc)
  • createSurfaceProvider(), getSurfaceProvider() olarak yeniden adlandırıldı. Yöntem her zaman aynı Preview.SurfaceProvider örneğini döndürür. (Iff83c)

Hata Düzeltmeleri

  • Uzantı efekti etkinse ve tedarikçi firma kitaplığı uygulamasının çıkış yüzeyinde özel bir işlem yapması gerekiyorsa PreviewView, TextureView'u kullanmaya zorlandı. (I0c3cc)
  • Önizleme için rastgele hedef rotasyonuna izin ver. Dönüşüm bilgileri yeni bir TranformationInfoListener geri çağırması aracılığıyla hesaplanıp kullanıcıya anında gönderilir. (I21470)

Bilinen Sorunlar

  • PreviewView'da son kullanıcı PreviewView'u tıkladığında OnClickListener#onClick() çağrılmaz. Dokunma etkinliği yanlışlıkla PreviewView#onTouchEvent() tarafından tüketiliyor. Bu sorun bir sonraki sürümde düzeltilecektir.
  • ViewPort, PreviewView ile kullanılıyorsa PreviewView#getMeteringPointFactory() üzerinden alınan MeteringPoint yanlış olabilir.

Kamera Uzantıları Sürüm 1.0.0-alpha15

19 Ağustos 2020

androidx.camera:camera-extensions:1.0.0-alpha15 yayınlandı. 1.0.0-alpha15 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • ExtensionsManager.init() yöntemi, artık 0 bağımsız değişkene sahip olmak yerine bir Bağlamı parametre olarak alır. (Ife754)
  • Context.getApplicationContext() kaynağından uygulama nesnesi döndürmeyen bir Context kullanılırken başlatma artık kilitlenmez. (I3d3c9, b/160817073)

    Camera-View Sürüm 1.0.0-alpha15

    19 Ağustos 2020

androidx.camera:camera-view:1.0.0-alpha15 yayınlandı. 1.0.0-alpha15 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • DisplayOrientedMeteringPointFactory, CameraSelector yerine CameraInfo örneğini alır. Bu nedenle, fabrikanın hangi Kamera için puan oluşturacağı doğrudan eşleme olur. DisplayOrientedMeteringPointFactory kullanan tüm sınıflar da CameraSelector yerine CameraInfo örneğini alır. (I400c1)
  • TextureViewMeteringPointFactory kaldırıldı. PreviewView, TextureView veya SurfaceView kullanmalarına bakılmaksızın ölçüm noktası fabrikası oluşturmak için herkese açık bir API (createMeteringPointFactory()) sağlar. (Ide693)
  • PreviewView'un SURFACE_VIEW/TEXTURE_VIEW uygulama modlarını PERFORMANCE/COMPATIBLE olarak yeniden adlandırın. PERFORMANCE eski SURFACE_VIEW modu, COMPATIBLE ise eski TEXTURE_VIEW modudur. (I0edc2)
  • Görüntü çekmek için meta verilerde kamera yönüne bağlı olarak yatay çevirme işaretinin üzerine yazın. (I28499)

Kamera Uzantıları Sürüm 1.0.0-alpha14

22 Temmuz 2020

androidx.camera:camera-extensions:1.0.0-alpha14 yayınlandı. Sürüm 1.0.0-alpha14 bu kayıtları içerir.

Camera-View Sürüm 1.0.0-alpha14

22 Temmuz 2020

androidx.camera:camera-view:1.0.0-alpha14 yayınlandı. Sürüm 1.0.0-alpha14 bu kayıtları içerir.

Kamera Uzantıları Sürüm 1.0.0-alpha13

24 Haziran 2020

androidx.camera:camera-extensions:1.0.0-alpha13 yayınlandı. Sürüm 1.0.0-alpha13 bu kayıtları içerir.

Hata Düzeltmeleri

  • Kameraları, kamera kimliğine ve KameraÖzelliklerine göre filtrelemek için deneysel arayüzler eklendi. (I28f61)

Camera-View Sürüm 1.0.0-alpha13

24 Haziran 2020

androidx.camera:camera-view:1.0.0-alpha13 yayınlandı. Sürüm 1.0.0-alpha13 bu kayıtları içerir.

Hata Düzeltmeleri

  • CameraView, Yaşam Döngüsü bağlandıktan kısa bir süre sonra DESTROYED durumuna geçen bir LifecycleOwner'a bağlanırken artık IllegalArgumentException ile kilitlenmiyor. KALDIRILDI durumunda Yaşam Döngüleri bağlanırsa kamera açılmaya çalışılmaz. (I7c2b8)
  • PreviewView StreamState artık CameraView.getPreviewStreamState() (I21a2b) üzerinden kullanılabilir.

Kamera Uzantıları Sürüm 1.0.0-alpha12

10 Haziran 2020

androidx.camera:camera-extensions:1.0.0-alpha12 yayınlandı. 1.0.0-alpha12 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Telefon Rahatsız Etmeyin modundayken CameraX, uygulama başlatılırken oluşan kilitlenme düzeltildi. InitializationException içeren bir CameraUnavailableException, uygulamayı kilitlemek yerine başlatma sonucunun ListenableFuture değerine ayarlanır. (I9909a, b/149413835)

Camera-View Sürüm 1.0.0-alpha12

10 Haziran 2020

androidx.camera:camera-view:1.0.0-alpha12 yayınlandı. 1.0.0-alpha12 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Önizleme yüzeyinde görüntülenen içeriğin bit eşlem gösterimini döndüren PreviewView#getBitmap() API'sini ekleyin. (I9b500, b/157659818)

Kamera Uzantıları Sürüm 1.0.0-alpha11

27 Mayıs 2020

androidx.camera:camera-extensions:1.0.0-alpha11 yayınlandı. Sürüm 1.0.0-alpha11 bu kayıtları içerir.

Camera-View Sürüm 1.0.0-alpha12

10 Haziran 2020

androidx.camera:camera-view:1.0.0-alpha12 yayınlandı. 1.0.0-alpha12 sürümü bu kayıtları içerir.

Yeni Özellikler

API Değişiklikleri

Hata Düzeltmeleri

  • Önizleme yüzeyinde görüntülenen içeriğin bit eşlem gösterimini döndüren PreviewView#getBitmap() API'sini ekleyin. (I9b500, b/157659818)

Camera-View Sürüm 1.0.0-alpha11

27 Mayıs 2020

androidx.camera:camera-view:1.0.0-alpha11 yayınlandı. Sürüm 1.0.0-alpha11 bu kayıtları içerir.

API Değişiklikleri

  • Uygulamaların, önizlemenin yayınlanıp yayınlanmadığını gözlemlemesini sağlayan PreviewView#getPreviewStreamState API ekleyin. PreviewView, TEXTURE_VIEW modundayken AKIŞ durumu, önizleme resminin görünür olmasını da garanti eder. (Ic0906, b/154652477)
  • Uygulama uzak görüntü modunda çalışıyorsa dönüşüm hesaplamaları için cihaz rotasyonu sağlamak üzere PreviewView#setDeviceRotationForRemoteDisplayMode() API'si eklendi. (I59b95, b/153514525)

Hata Düzeltmeleri

  • Android 7.0 ve önceki sürümleri çalıştıran FULL/LIMITED/LEVEL_3 kameradaki önizleme bozulması sorunu düzeltildi. Android sürümü 7.0 veya önceki sürümler olduğunda ImplementationMode#TEXTURE_VIEW modu zorunlu olarak kullanılır. (I83e30, b/155085307)
  • CameraInfo parametresi PreviewView#createSurfaceProvider() öğesinden kaldırıldı, PreviewView artık bunu SurfaceRequest ürününden dahili olarak alıyor. (If18f0, b/154652477)
  • CameraView'da Video Yakalama'nın varsayılan en boy oranı 16:9 olarak düzeltildi. (Ie6a7b, b/153237864)
  • Preview parçasını hızlıca kaydırıp ardından ViewPager2'de geri kaydırıldığında ortaya çıkan PreviewView siyah ekran sorunu düzeltildi. Ayrıca, removeView(previewview) ve ardından addView(previewView) olduğunda ortaya çıkan sorun da düzeltildi. (Iab555, b/149877652, b/147354615)
  • Resimlerin Uri ve OutputStream içine kaydedilmesine izin vermek için CameraView#takePicture() API'yi güncelleyin. Test uygulamasını, standart örnek olarak Uri kullanacak şekilde güncelleyin. (Ia2459, b/153607583)
  • ScaleType özelliğini ayarlayarak PreviewView'un ölçek türünü XML düzeninden ayarlayabilirsiniz. (I08565, b/153015659)
  • CameraView.ScaleType kaldırıldı. Bunun yerine, CameraView ile bir ölçek türü ayarlamak/almak için PreviewView.ScaleType kullanın. (Ia8974, b/153014831)
  • Henüz yoksa PreviewView ürününe varsayılan olarak bir arka plan rengi verin. Bu, önizleme akışı başlamadan önce içeriğin arkasındaki içeriğin görünmesini engeller. (I09fad)

Kamera Uzantıları Sürüm 1.0.0-alpha10

15 Nisan 2020

androidx.camera:camera-extensions:1.0.0-alpha10 yayınlandı. Sürüm 1.0.0-alpha10 bu kayıtları içerir.

Hata Düzeltmeleri

  • Camera-Core'un kullanıma sunulmasını destekleyen düzeltmeler

Camera-View Sürüm 1.0.0-alpha10

15 Nisan 2020

androidx.camera:camera-view:1.0.0-alpha010 yayınlandı. Sürüm 1.0.0-alpha010 bu kayıtları içerir.

Hata Düzeltmeleri

  • PreviewView'infaceView uygulamasının belirli cihazlarda düzgün çalışmadığı ve önizleme devam ettirildikten sonra uygulamanın kilitlenmesine neden olduğu bilinen önceki bir sorunu düzeltir. (I5ed6b)

Kamera Uzantıları Sürüm 1.0.0-alpha09

1 Nisan 2020

androidx.camera:camera-extensions:1.0.0-alpha09 yayınlandı. Sürüm 1.0.0-alpha09 bu kayıtları içerir.

Hata Düzeltmeleri

  • camera-camera2:1.0.0-beta02, camera-core:1.0.0-beta02 ve camera-lifecycle:1.0.0-beta02 yapılarındaki hata düzeltmelerini desteklemek için güncellendi

Camera-View Sürüm 1.0.0-alpha09

1 Nisan 2020 androidx.camera:camera-view:1.0.0-alpha09 yayınlandı. Sürüm 1.0.0-alpha09 bu kayıtları içerir.

Bilinen Sorunlar

  • ImplementationMode.SURFACE_VIEW işlevinin PreviewView ile kullanılması belirli cihazlarda düzgün çalışmayabilir. Bunun nedeni, önizleme için kullanılan SurfaceView öğesinin, bulunduğu pencerenin yaşam döngüsü durdurulduğunda yüzeyi geçersiz kılması, yeniden başladığında kamera yeniden açılması ve SurfaceView yüzeyi tekrar geçerli olmadan önizlemeyi devam ettirmeye çalışabilmesidir. Şimdilik ImplementationMode.TEXTURE_VIEW platformunu kullanmanız gerekir.

API Değişiklikleri

  • PreviewView.setImplementationMode(), PreviewView.setPreferredImplementationMode() olarak yeniden adlandırıldı.
  • PreviewView.getImplementationMode(), PreviewView.getPreferredImplementationMode() olarak yeniden adlandırıldı.
  • PreviewView.getSurfaceProvider(), PreviewView.createSurfaceProvider(CameraInfo) ile değiştirildi. Bu işlem, önizlemeyi optimize etmek için mümkün olduğunda ImplementationMode.SURFACE_VIEW kullanılarak kullanılan boş değerli bir CameraInfo örneği alır. Boş bir örnek aktarılırsa veya tercih edilen uygulama modunu ImplementationMode.TEXTURE_VIEW olarak ayarlarsanız dahili olarak ImplementationMode.TEXTURE_VIEW kullanılır.
  • Aşağıdaki kod örneğinde, bir önizleme kullanım alanının daha önce PreviewView ile nasıl kullanıldığı gösterilmektedir.

    preview.setSurfaceProvider(previewView.previewSurfaceProvider)
    cameraProvider.bindToLifecycle(lifecycleOwner, cameraSelector, preview)
    

    Şu anda, aşağıdakileri yazabilirsiniz:

    val camera = cameraProvider.bindToLifecycle(lifecycleOwner, cameraSelector, preview)
    previewView.preferredImplementationMode = ImplementationMode.TEXTURE_VIEW
    preview.setSurfaceProvider(previewView.createSurfaceProvider(camera.cameraInfo))
    
  • @UiThread ek açıklaması PreviewView.getSurfaceProvider() öğesine eklendi. Yani, ek açıklamanın ana iş parçacığından çağrılması gerekiyor. (I192f3)

  • Önizlemenin ölçek türünü ayarlamaya olanak tanıyan PreviewView.setScaleType() eklendi. PreviewView.ScaleType içindeki değerlerden birini kabul eder ve varsayılan olarak PreviewView.ScaleType.FILL_CENTER değerini alır.

  • PreviewView.getScaleType() eklendi.

  • implementationMode özelliğini kullanarak XML düzeninde PreviewView uygulama modunu ayarlama desteği kaldırıldı.

  • PreviewView bölgesinde (x, y) işlemlerinin MeteringPoint biçimine dönüştürülmesini desteklemek için PreviewView'a createMeteringPointFactory() API'sini ekleyin. (Ib36d7)

Hata Düzeltmeleri

  • PreviewView boyutu değiştiğinde yanlış önizlemenin görüntülendiği durumlar düzeltildi. (I71101)

Kamera Uzantıları Sürüm 1.0.0-alpha08

26 Şubat 2020

androidx.camera:camera-extensions:1.0.0-alpha08 yayınlandı. 1.0.0-alpha08 sürümü bu kayıtları içerir.

Camera-View Sürüm 1.0.0-alpha08

26 Şubat 2020

androidx.camera:camera-view:1.0.0-alpha08 yayınlandı. 1.0.0-alpha08 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • SurfaceRequest.provideSurface() alanındaki ListenableFuture öğesi, Executor ve Callback ile değiştirildi. Bu, provideSurface() ile ilgili istisnaların işlenmesini artık gerektirmeyip API'yi basitleştirir ve provideSurface() geri çağırmanın iptal edilememesini zorunlu kılar. Bunun amacı, yüzeylerin zamanından önce serbest bırakılmasından dolayı eski cihazlarda meydana gelen kilitlenmeleri önlemektir. SurfaceRequest.Result nesnesi artık bir SurfaceRequest öğesinin sağlanan Surface öğesini nasıl kullandığını izlemek için kullanılıyor. (I7854b)
  • SurfaceRequest.setSurface(Surface) öğesinin adı SurfaceRequest.provideSurface(Surface), SurfaceRequest.setWillNotComplete() adı ise SurfaceRequest.willNotProvideSurface() olarak değiştirildi. (I224fe)
  • Varsayılan CameraXConfig sağlayıcısını belirleyen işaretin korunarak ProGuard'ın etkinleştirildiği uygulama varyantlarının başlatılması düzeltildi. (I2d6c1)

Kamera Uzantıları Sürüm 1.0.0-alpha07

10 Şubat 2020

androidx.camera:camera-extensions:1.0.0-alpha07 yayınlandı. Sürüm 1.0.0-alpha07 bu kayıtları içerir.

Hata Düzeltmeleri

  • ImageCapture.OnImageSavedCallback.onError() ve ImageCapture.OnImageCapturedCallback.onError() işlevlerinde daha önce iletilen bağımsız değişkenlerin yerini, önceden iletilen tüm bilgileri hâlâ içeren tek bir ImageCaptureException bağımsız değişkeni almıştır.
  • Daha önce ImageCapture.OnImageSavedCallback.onImageSaved() içinde iletilen dosya bağımsız değişkeni kaldırıldı. (I750d2)

Camera-View Sürüm 1.0.0-alpha07

10 Şubat 2020

androidx.camera:camera-view:1.0.0-alpha07 yayınlandı. Sürüm 1.0.0-alpha07 bu kayıtları içerir.

API Değişiklikleri

  • PreviewView'in TextureView uygulaması, TextureView boyutunu kamera sensörü çıkış boyutuna ayarlıyor ve üst öğesi PreviewView alanını dolduracak şekilde ölçeklendiriliyor. Kamera önizlemesinin kullanıcı arayüzünün tamamını (örneğin, tüm ekranı) doldurmasını istiyorsanız PreviewView boyutunu sabit bir değere ayarlamamalı veya içeriğini sarmalamamalısınız (örneğin, "wrap_content" özelliğini kullanarak) bu durum, kamera önizlemesinin PreviewView alanının yalnızca bir kısmını doldurmasına neden olabilir (kamera sensörü çıkış boyutu daha küçükse). Bunun yerine, PreviewView öğesini üst öğesi kadar büyük olarak ayarlamanız gerekir (örneğin, "match_parent" özelliğini kullanarak). (1204869)

Hata Düzeltmeleri

  • ImageCapture, resimlerin Uri ve OutputStream içine kaydedilmesine olanak tanıyacak şekilde güncellendi. Aşırı yüklenmiş takePicture yöntemleri tek bir yöntemde birleştirildi. Test uygulaması, standart örnek olarak Uri kullanacak şekilde güncellendi. (Ia3bec)
  • Preview.PreviewSurfaceProvider, Preview.SurfaceProvider olarak yeniden adlandırıldı. SurfaceProvider'ler artık geliştiricilerin kendi ListenableFuture modellerini oluşturmalarını gerektirmemektedir. Surface sağlama işlemi artık yeni SurfaceRequest nesnesi aracılığıyla gerçekleştirilmektedir. Preview, PreviewView gibi diğer sınıflarla eşlendiğinde Preview.getPreviewSurfaceProvider() yöntemi hatalı kullanım olasılığı nedeniyle kaldırıldı. (I20105)
  • ImageCapture.OnImageSavedCallback.onError() ve ImageCapture.OnImageCapturedCallback.onError() işlevlerinde daha önce iletilen bağımsız değişkenlerin yerini, önceden iletilen tüm bilgileri hâlâ içeren tek bir ImageCaptureException bağımsız değişkeni almıştır.
  • Daha önce ImageCapture.OnImageSavedCallback.onImageSaved() içinde iletilen dosya bağımsız değişkeni kaldırıldı. (I750d2)
  • CameraInfo adlı API'nin getZoomRatio(), getMaxZoomRatio(), getMinZoomRatio() ve getLinearZoom() yöntemleri, getZoomState() ile birleşerek ZoomState örneği döndürerek güncellendi. (İb19fe)

Kamera Uzantıları Sürüm 1.0.0-alpha06

22 Ocak 2020

androidx.camera:camera-extensions:1.0.0-alpha06 yayınlandı. Sürüm 1.0.0-alpha06 bu kayıtları içerir.

Güncellemeler

  • Camera Core ve Camera2 değişikliklerini desteklemek için çeşitli düzeltmeler ve güncellemeler.

Camera-View Sürüm 1.0.0-alpha06

22 Ocak 2020

androidx.camera:camera-view:1.0.0-alpha06 yayınlandı. Sürüm 1.0.0-alpha06 bu kayıtları içerir.

Güncellemeler

  • Camera Core ve Camera2 değişikliklerini desteklemek için çeşitli düzeltmeler ve güncellemeler.

Kamera Uzantıları Sürüm 1.0.0-alpha05

18 Aralık 2019

androidx.camera:camera-extensions:1.0.0-alpha05 yayınlandı. 1.0.0-alpha05 sürümü bu kayıtları içerir.

Hata Düzeltmeleri

  • Dahili Camera Core API'leriyle eşleşecek şekilde güncellendi.

Camera-View Sürüm 1.0.0-alpha05

18 Aralık 2019

androidx.camera:camera-view:1.0.0-alpha05 yayınlandı. 1.0.0-alpha05 sürümü bu kayıtları içerir.

Bilinen Sorunlar

  • PreviewView kullanılırken en boy oranı yanlış olabilir (b/146215202).

Yeni Özellikler

  • SurfaceTexture'ın yaşam döngüsünü, kameranın TextureView yüzeyini kullanımıyla senkronize eden PreviewView.TextureViewImplementation adlı yeni bir sınıf uygulandı.

Kamera Uzantıları Sürüm 1.0.0-alpha04

4 Aralık 2019

androidx.camera:camera-extensions:1.0.0-alpha04 yayınlandı. Kamera uzantılarının 1.0.0-alpha04 sürümü bu kayıtları içerir

API değişiklikleri

  • Bir uzantının kullanılabilirliğinin kontrol edilmesi ve etkinleştirilmesi artık giriş parametresi olarak CameraSelector alır. Bu, kullanım alanını bağlamak için kullanılan CameraSelector ile aynı olmalıdır.

    val cameraSelector = CameraSelector.DEFAULT_BACK_CAMERA
    val builder = ImageCapture.Builder()
    val bokehImageCaptureExtender = BokehImageCaptureExtender.create(builder)
    if (bokehImageCaptureExtender.isExtensionAvailable(cameraSelector)) {
        bokehImageCaptureExtender.enableExtension(cameraSelector)
    }
    val imageCapture = builder.build()
    mCameraProvider?.bindToLifecycle(this, cameraSelector, imageCapture)
    
  • Uzantı kitaplığını kullanmadan önce uzantıları başlatmanız gerekir.

    val availability = ExtensionsManager.init()
    Futures.addCallback<ExtensionsManager.ExtensionsAvailability>(
       availability,
       object : FutureCallback<ExtensionsManager.ExtensionsAvailability> {
           override fun onSuccess(availability: ExtensionsManager.ExtensionsAvailability?) {
               // Ready to make extensions calls
           }
           override fun onFailure(throwable: Throwable) {
               // Extensions could not be initialized
           }
       },
       Executors.newSingleThreadExecutor()
    )
    

Camera-View Sürüm 1.0.0-alpha04

4 Aralık 2019

androidx.camera:camera-view:1.0.0-alpha04 yayınlandı. Kamera görünümünün 1.0.0-alpha04 sürümü bu kayıtları içerir

API değişiklikleri

  • Bir uygulamada Önizleme kullanım alanından çıktının kolayca görüntülenmesi için bir PreviewView sınıfı sağlanmıştır.
  • PreviewView şu düzene dahil edilebilir:

    <androidx.camera.view.PreviewView
      android:id="@+id/preview_view"
      … />
    
  • PreviewView, Önizleme kullanım alanını kolayca bağlamak için PreviewSurfaceProvider sağlar

    preview.setPreviewSurfaceProvider(previewView.previewSurfaceProvider)
    
  • API adlandırmasında "ZoomLevel" artık "ZoomRatio" olarak değiştirilmiştir

  • Bazı yöntem parametreleri boş değer atanabilirliği değiştirdi

Kamera Uzantıları ve Kamera Görünümü Sürümü 1.0.0-alpha03

9 Ekim 2019

androidx.camera:camera-extensions:1.0.0-alpha03 ve androidx.camera:camera-view:1.0.0-alpha03 yayınlandı. Bunlar, camera-extensions:1.0.0-alpha03 kapsamındaki taahhütler, camera-view:1.0.0-alpha03 kapsamındaki taahhütler ise bunlardır.

Yeni Özellikler

  • Uzantılar için Bağlam başlatıcı eklendi. Uzantı sürümü 1.1.0'a yükseltildi

Kamera Uzantıları ve Kamera Görünümü Sürümü 1.0.0-alpha02

5 Eylül 2019

androidx.camera:camera-extensions:1.0.0-alpha02 ve androidx.camera:camera-view:1.0.0-alpha02 yayınlandı. Bunlar, camera-extensions:1.0.0-alpha02'de yer alan taahhütler ve camera-view:1.0.0-alpha02 kapsamındaki taahhütlerdir.

  • PreviewImageProcessorImpl zaman damgalarını doğru bir şekilde uyguladığını doğrulamak için testler eklendi.
  • Nexus 5'te (API düzeyi 21) ExtensionTest test hatasını düzeltin ve önizlemenin kullanılabilir olduğundan emin olun.

Kamera Uzantıları ve Kamera Görünümü Sürümü 1.0.0-alpha01

7 Ağustos 2019

androidx.camera:camera-extensions:1.0.0-alpha01 ve androidx.camera:camera-view:1.0.0-alpha01 yayınlandı. Bunlar, camera-extensions:1.0.0-alpha01'e dahil olan taahhütler ve camera-view:1.0.0-alpha01'e dahil olan taahhütlerdir.

  • Gelecekte desteklenen cihazlarda efektlere erişmek için ileride kullanılacak Kamera Uzantılarına yeni kitaplık. Bu kitaplıkla ilgili çalışmalar devam ediyor.
  • Yeni Kamera Görünümü sınıfı. Bu kitaplıkla ilgili çalışmalar devam ediyor.