منظره یاب دوربین

منظره یاب مستقل قابل ترکیب و مشاهده برای دوربین"

این جدول تمام مصنوعات را در گروه androidx.camera-viewfinder فهرست می کند.

مصنوع انتشار پایدار کاندید را آزاد کنید نسخه بتا انتشار آلفا
منظره یاب-نوشتن - - 1.5.0-beta03 1.4.0-alpha13
منظره یاب-هسته - - 1.5.0-بتا03 1.4.0-alpha13
منظره یاب-نما - - 1.5.0-بتا03 1.4.0-alpha13
آخرین به روز رسانی این کتابخانه در: 16 جولای 2025

اعلام وابستگی ها

برای افزودن وابستگی به دوربین منظره یاب، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.

وابستگی‌های مصنوعات مورد نیاز خود را در فایل build.gradle برای برنامه یا ماژول خود اضافه کنید:

شیار

dependencies {
    // Use to implement camera viewfinders
    
    implementation "androidx.camera.viewfinder:viewfinder-view:1.5.0-beta03"
    implementation "androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta03"
    implementation "androidx.camera.viewfinder:viewfinder-core:1.5.0-beta03"

}

کاتلین

dependencies {
    // Use to implement camera viewfinders
    implementation("androidx.camera.viewfinder:viewfinder-view:1.5.0-beta03")
    implementation("androidx.camera.viewfinder:viewfinder-core:1.5.0-beta03")
    implementation("androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta03")


}

برای اطلاعات بیشتر درباره وابستگی‌ها، به افزودن وابستگی‌های ساخت نگاه کنید.

بازخورد

بازخورد شما به بهتر شدن Jetpack کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.

یک شماره جدید ایجاد کنید

برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.

نسخه 1.5

نسخه 1.5.0-beta03

16 جولای 2025

androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta03 ، androidx.camera.viewfinder:viewfinder-core:1.5.0-beta03 و androidx.camera.viewfinder:viewfinder-view:1.5.0-beta03 منتشر شده‌اند. نسخه 1.5.0-beta03 حاوی این تعهدات است.

رفع اشکال

  • حالت ImplementationMode پیش‌فرض برای Viewfinder (هر دو Compose و View-based) اکنون به طور هوشمند بین EXTERNAL (برای عملکرد) و EMBEDDED (برای سازگاری با APIهای قدیمی/دستگاه‌های عجیب و غریب) انتخاب می‌کند. این رفتار همچنان می‌تواند با تنظیمات صریح در ویژگی‌های ViewfinderSurfaceRequest یا XML (در API مبتنی بر View) لغو شود. ( Iecd3a )
  • مدیریت جلسه سطح بهبود یافته با اجازه دادن به ViewfinderSurfaceSession برای زنده نگه داشتن در طول چرخه عمر ایجاد/از بین بردن سطح هنگام استفاده از TextureView یا SurfaceView در API 29+. ( I112d9 )
  • Viewfinder اکنون تضمین می‌کند که سطوح در زمان مناسب منتشر می‌شوند، تنها زمانی که دیگر در جلسه استفاده نمی‌شوند، نه همیشه زمانی که Composable از بین می‌رود. برای EXTERNAL ( SurfaceView ) این رفتار در حال حاضر فقط در API 29+ موجود است. برای EMBEDDED ( TextureView )، این رفتار در تمام سطوح API وجود دارد. ( I9a03f )
  • Viewfinder اکنون به خوبی جایگزین سطح را در حالات انجام می دهد، مانند زمانی که منظره یاب EXTERNAL در سطح API 28 یا پایین تر از صفحه خارج می شود یا Viewfinder (با هر ImplementationMode ) بخشی از moveableContentOf() باشد. ( I79432 )
  • Viewfinder Composable اکنون به درستی با Compose's Pager کار می کند. این تغییر تضمین می‌کند که Composable می‌تواند با اجرای بازگشت به تماس onReset AndroidView ، با پشتیبانی از هر دو پیاده‌سازی EMBEDDED و EXTERNAL ، با موفقیت بازنشانی شود. ( I0d9be )
  • مشکلی را در Android 10/11 که در آن Viewfinder EXTERNAL به دلیل اعمال زودهنگام عملیات تبدیل (مانند مقیاس یا ترجمه) کشیده یا نادرست به نظر می رسد، برطرف می کند. سیستم اکنون منتظر می ماند تا Surface قبل از اعمال این تبدیل ها در مرحله طرح بندی ایجاد شود و از خروجی صحیح اطمینان حاصل کند. ( Icc77c )

نسخه 1.5.0-beta02

4 ژوئن 2025

androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta02 ، androidx.camera.viewfinder:viewfinder-core:1.5.0-beta02 و androidx.camera.viewfinder:viewfinder-view:1.5.0-beta02 منتشر شدند. نسخه 1.5.0-beta02 حاوی این تعهدات است.

نسخه 1.5.0-beta01

7 مه 2025

androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01 ، androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01 و androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01 منتشر شدند. نسخه 1.5.0-beta01 حاوی این تعهدات است.

  • این اولین نسخه رسمی بتا از منظره یاب های مبتنی بر view و compose است که به اندازه کافی انعطاف پذیر هستند تا با Camera2 استفاده شوند. اگر به دنبال View یا Composable برای استفاده با CameraX هستید، به PreviewView و CameraXViewfinder مراجعه کنید.

ویژگی های جدید

  • ContentScale و Alignment اکنون می توانند در منظره یاب مبتنی بر نوشتن برای مقیاس بندی و قرار دادن سطح نمایش داده شده در ظرف آن، مشابه نحوه رفتار androidx.compose.foundation.Image استفاده شوند. ( Ibcea3 )

تغییرات API

  • TransformationInfo اکنون مقادیر پیش فرض را برای همه آرگ ها دارد. این امکان ایجاد منظره‌یاب‌ها را بدون TransformationInfo فراهم می‌کند، که به‌طور پیش‌فرض چرخش منبع 0، بدون آینه‌سازی منبع و بدون برش رکت خواهد بود. ( I2b1b2 )
  • منظره یاب Composable اکنون یک لامبدای آخر را برای دریافت یک جلسه سرفیس، مشابه AndroidExternalSurface می گیرد. لامبدای ارائه شده از ViewfinderInitScope به عنوان گیرنده استفاده می کند، که امکان نصب یک callback برای دریافت جلسات Surface جدید را فراهم می کند. این جلسات سطحی به طور خودکار منابعی را که منظره یاب در اختیار دارد، زمانی که از محدوده خارج می شوند، آزاد می کنند. ( Ib2b0d )
  • ViewfinderSurfaceRequest.Builder.populateFromCharacteristics اکنون حذف شده است و اکنون با مجموعه ای معادل از API های ثابت جایگزین شده است که می تواند برای ایجاد TransformationInfo استفاده شود که همان تبدیل populateFromCharacteristics را ایجاد می کند. این متدهای استاتیک به کلاس Camera2TransformationInfo اضافه می شوند. ( IDc6af )
  • ViewfinderSurfaceRequest دیگر شامل APIهای ناهمگام برای بازیابی سطح نیست. اکنون یک نوع داده تغییرناپذیر است. APIهای بازیابی سطح اکنون به نمایاب منتقل می شوند. ( I30127 )
  • CameraViewfinder به ViewfinderView تغییر نام داده است تا نامگذاری با نام Viewfinder composable همسو باشد و نشان دهد که می توان آن را با منابعی بیشتر از دوربین استفاده کرد. ( Id9e6b )
  • کلاس‌ها از viewfinder-view به زیر بسته androidx.camera.viewfinder.view از بسته androidx.camera.viewfinder منتقل شده‌اند. ( I6cb44 )
  • API های جدیدی به Viewfinder مبتنی بر نمایش اضافه شده است که امکان تنظیم چرخش منبع، آینه سازی و مستطیل برش را فراهم می کند. این کلاس TransformationInfo همان کلاسی است که توسط Viewfinder مبتنی بر نوشتن استفاده می شود. ( I907c3 )
  • Viewfinder مبتنی بر view اکنون از API های ViewfinderSurfaceRequest جدید استفاده می کند که دیگر به صورت داخلی پاسخ سرفیس را مدیریت نمی کنند. به‌جای برگرداندن ListenableFuture<Surface> ، APIهای requestSurfaceSession() اکنون ListenableFuture<ViewfinderSurfaceSession> را برمی‌گردانند که یک کلاس AutoCloseable را برمی‌گرداند که وقتی بسته می‌شود مانند فراخوانی API قدیمی ViewfinderSurfaceRequest.markSurfaceSafeToRelease() عمل می‌کند. این یک تفکیک واضح تری از مسئولیت ها بین درخواست سطح و پاسخ سطح را فراهم می کند. ( I19041 )

نسخه 1.4

نسخه 1.4.0-alpha13

26 فوریه 2025

androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha13 ، androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha13 و androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha13 منتشر شدند. نسخه 1.4.0-alpha13 حاوی این commit ها است.

نسخه 1.4.0-alpha12

15 ژانویه 2025

androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha12 ، androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha12 و androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha12 منتشر شدند. نسخه 1.4.0-alpha12 حاوی این commit ها است.

ویژگی های جدید

  • compileSdk به عنوان 35 برای استفاده از API مربوط به Android 15 ارتقا یافت. برنامه هایی که از کتابخانه های CameraX استفاده می کنند نیز باید تنظیمات پیکربندی compileSdk خود را ارتقا دهند. ( IC80cd )
  • این کتابخانه اکنون از حاشیه‌نویسی‌های پوچ JSpecify استفاده می‌کند که نوع استفاده هستند. توسعه دهندگان Kotlin باید از آرگومان کامپایلر زیر برای اعمال استفاده صحیح استفاده کنند: -Xjspecify-annotations=strict (این پیش فرض با نسخه 2.1.0 کامپایلر Kotlin شروع می شود). ( I7bcd7 , b/326456246 )

نسخه 1.4.0-alpha11

11 دسامبر 2024

androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha11 ، androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha11 و androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha11 منتشر شدند. نسخه 1.4.0-alpha11 حاوی این commit ها است.

تغییرات API

  • کلاس های viewfinder-core به بسته هایی منتقل شده اند که با کتابخانه ای که به آن تعلق دارند سازگار است. ( I431c6 )
  • CameraViewfinder.ScaleType به viewfinder-core منتقل شده است تا بتوان از آن با نوشتن مجدد استفاده کرد ( I87ef1 )
  • کلاس های قدیمی CameraViewfinder حذف می شوند. لطفاً از APIهای جدید استفاده کنید که عملکردی معادل را ارائه می دهند. ( I6e59a )

نسخه 1.4.0-alpha10

30 اکتبر 2024

androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha10 ، androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha10 و androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha10 منتشر شدند. نسخه 1.4.0-alpha10 حاوی این commit ها است.

نسخه 1.4.0-alpha09

2 اکتبر 2024

androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha09 ، androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha09 و androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha09 منتشر شدند. نسخه 1.4.0-alpha09 حاوی این تعهدات است.

نسخه 1.4.0-alpha08

4 سپتامبر 2024

androidx.camera.viewfinder:viewfinder-compose:1.4.0-alpha08 ، androidx.camera.viewfinder:viewfinder-core:1.4.0-alpha08 و androidx.camera.viewfinder:viewfinder-view:1.4.0-alpha08 منتشر شدند. نسخه 1.4.0-alpha08 حاوی این commit ها است.

ویژگی های جدید

با به روز رسانی به 1.4.0-alpha08، مصنوع CameraX Viewfinder به گروه کتابخانه خودش منتقل شد. این تغییر برای بهبود ماژولار بودن و قابلیت نگهداری کتابخانه CameraX ضروری است.

اگر قبلاً به androidx.camera:camera-viewfinder ، androidx.camera:camera-viewfinder-compose یا androidx.camera:camera-viewfinder-core وابسته بودید، باید وابستگی‌های خود را به موارد زیر تغییر دهید:

  • androidx.camera:camera-viewfinder -> androidx.camera.viewfinder:viewfinder-view
  • androidx.camera:camera-viewfinder-compose -> androidx.camera.viewfinder:viewfinder-compose
  • androidx.camera:camera-viewfinder-core -> androidx.camera.viewfinder:viewfinder-core

برای انجام این انتقال نیازی به تغییر کد نیست. مختصات قدیمی Viewfinder maven دیگر به‌روزرسانی دریافت نمی‌کند.

علاوه بر این، اگر از Compose with CameraX استفاده می‌کنید، یک کتابخانه جدید Compose-first اکنون در آلفا موجود است: androidx.camera:camera-compose . این CameraXViewfinder composable را فراهم می‌کند، که یک منظره یاب اصطلاحی ترکیبی است که SurfaceRequest CameraX را با Compose تطبیق می‌دهد، مشابه نحوه عملکرد PreviewView برای نماها.