عدسة الكاميرا
يسرد هذا الجدول جميع العناصر في مجموعة androidx.camera-viewfinder
.
العناصر | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأولي |
---|---|---|---|---|
viewfinder-compose | - | - | 1.5.0-beta01 | 1.4.0-alpha13 |
viewfinder-core | - | - | 1.5.0-beta01 | 1.4.0-alpha13 |
viewfinder-view | - | - | 1.5.0-beta01 | 1.4.0-alpha13 |
تحديد التبعيات
لإضافة تبعية على كاميرا عدسة الكاميرا، عليك إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف التبعيات للعناصر التي تحتاج إليها في ملف build.gradle
ل
تطبيقك أو وحدتك:
رائع
dependencies { // Use to implement camera viewfinders implementation "androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01" implementation "androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01" implementation "androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01" }
Kotlin
dependencies { // Use to implement camera viewfinders implementation("androidx.camera.viewfinder:viewfinder-view:1.5.0-beta01") implementation("androidx.camera.viewfinder:viewfinder-core:1.5.0-beta01") implementation("androidx.camera.viewfinder:viewfinder-compose:1.5.0-beta01") }
لمزيد من المعلومات عن العناصر الاعتمادية، اطّلِع على مقالة إضافة عناصر الاعتماد الخاصة بالإصدار.
الملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا واجهت مشاكل جديدة أو كان لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مكتبة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.
اطّلِع على مستندات أداة تتبُّع المشاكل لمزيد من المعلومات.
الإصدار 1.5
الإصدار 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 عمليات الربط هذه.
- هذا هو أول إصدار تجريبي رسمي لمعاينات المشهد المستندة إلى العرض والمستندة إلى الإنشاء، وهي مرنة بما يكفي لاستخدامها مع Camera2. إذا كنت تبحث عن عرض أو عنصر قابل للتركيب لاستخدامه مع CameraX، اطّلِع على
PreviewView
وCameraXViewfinder
.
الميزات الجديدة
- يمكن الآن استخدام
ContentScale
وAlignment
في عدسة الكاميرا المستندة إلى الإنشاء لتغيير حجم المساحة المعروضة ووضعها داخل الحاوية، تمامًا مثل سلوكandroidx.compose.foundation.Image
. (Ibcea3)
تغييرات واجهة برمجة التطبيقات
- تحتوي
TransformationInfo
الآن على قيم تلقائية لجميع الوسيطات. سيسمح ذلك بإنشاء عدسات بحث بدون أيTransformationInfo
، ما سيؤدي تلقائيًا إلى ضبط دوران المصدر على 0، وعدم عكس المصدر، وعدم اقتصاص مستطيل. (I2b1b2) - يأخذ "مخطّط العرض القابل للتجميع" الآن متغيّر lambda متأخرًا لتلقّي جلسة Surface، مثل
AndroidExternalSurface
. تستخدِم دالة lambda المقدَّمةViewfinderInitScope
كمستلِم، ما يسمح بتثبيت ردّ اتصال لتلقّي جلسات Surface الجديدة. وتُطلق جلسات العرض هذه تلقائيًا الموارد التي يحتفظ بها "مخطّط العرض" عندما تخرج عن النطاق. (Ib2b0d) - تمّت إزالة
ViewfinderSurfaceRequest.Builder.populateFromCharacteristics
وتم استبدالها الآن بمجموعة مكافئة من واجهات برمجة التطبيقات الثابتة التي يمكن استخدامها لإنشاءTransformationInfo
التي ستؤدي إلى إجراء التحويل نفسه الذي يؤديهpopulateFromCharacteristics
. تتم إضافة هذه الطرق الثابتة إلى فئةCamera2TransformationInfo
. (Idc6af) - لم تعُد
ViewfinderSurfaceRequest
تتضمّن واجهات برمجة تطبيقات غير متزامنة لاسترداد المساحة. أصبح الآن نوع بيانات غير قابل للتغيير. تم نقل واجهات برمجة التطبيقات لاسترداد السطح إلى عدسة الكاميرا. (I30127) - تمت إعادة تسمية
CameraViewfinder
إلىViewfinderView
حتى تتوافق التسمية مع تسمية عنصر "منظار الكاميرا" القابل للتجميع، وللإشارة إلى أنّه يمكن استخدامه مع مصادر أخرى غير مصادر الكاميرا. (Id9e6b) - تم نقل الفئات من
viewfinder-view
إلى الحزمة الفرعيةandroidx.camera.viewfinder.view
من الحزمةandroidx.camera.viewfinder
. (I6cb44) - تمت إضافة واجهات برمجة تطبيقات جديدة إلى "عدسة الكاميرا" المستندة إلى العرض، والتي تتيح ضبط دوران المصدر، وعكسه، ومستطيل الاقتصاص. فئة
TransformationInfo
هذه هي الفئة نفسها المستخدَمة في "عدسة الكاميرا" المستندة إلى الإنشاء. (I907c3) - يستخدم الآن "منظار البحث" المستنِد إلى العرض واجهات برمجة تطبيقات
ViewfinderSurfaceRequest
جديدة لم تعُد تعالج استجابة Surface داخليًا. بدلاً من عرضListenableFuture<Surface>
، تعرض واجهات برمجة تطبيقاتrequestSurfaceSession()
الآنListenableFuture<ViewfinderSurfaceSession>
التي تعرض فئةAutoCloseable
التي تتصرف بالطريقة نفسها عند إغلاقها مثل استدعاء واجهة برمجة التطبيقات القديمة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 على عمليات الربط هذه.
الإصدار 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 عمليات الربط هذه.
الميزات الجديدة
- تمت ترقية
compileSdk
إلى 35 لاستخدام واجهة برمجة التطبيقات ذات الصلة بنظام التشغيل 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 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- تم نقل فئات
viewfinder-core
إلى حِزم متوافقة مع المكتبة التي تنتمي إليها. (I431c6) - تم نقل
CameraViewfinder.ScaleType
إلىviewfinder-core
حتى يمكن إعادة استخدامها مع ميزة "إنشاء" (I87ef1) - تتم إزالة فئات
CameraViewfinder
التي تم إيقافها نهائيًا. يُرجى استخدام واجهات برمجة التطبيقات الجديدة التي توفّر وظيفة مماثلة. (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 عمليات الربط هذه.
الإصدار 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 عمليات الربط هذه.
الميزات الجديدة
بعد التحديث إلى الإصدار 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
من المفترض ألا تكون هناك حاجة إلى إجراء أي تغييرات على الرمز لتنفيذ عملية النقل هذه. لن تتلقّى بعد الآن إحداثيات Maven القديمة لتطبيق Viewfinder أي تعديلات.
بالإضافة إلى ذلك، إذا كنت تستخدم Compose مع CameraX، تتوفّر الآن مكتبة جديدة مخصّصة لاستخدام Compose في الإصدار التجريبي: androidx.camera:camera-compose
. يقدّم هذا الإجراء CameraXViewfinder
القابل للتركيب، وهو عبارة عن عدسة بحث مناسبة لميزة "الإنشاء" تُعدّل SurfaceRequest
في CameraX لتتوافق مع ميزة "الإنشاء"، تمامًا مثل طريقة عمل PreviewView
مع المشاهد.