עינית המצלמה
בטבלה הזו מפורטים כל פריטי המידע בקבוצה androidx.camera-viewfinder.
| פריט מידע שנוצר בתהליך פיתוח (Artifact) | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
|---|---|---|---|---|
| עינית-קומפוזיציה | 1.5.3 | 1.6.0-rc01 | - | - |
| viewfinder-core | 1.5.3 | 1.6.0-rc01 | - | - |
| תצוגה של העינית | 1.5.3 | 1.6.0-rc01 | - | - |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-camera-viewfinder, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.
אתם יכולים להוסיף את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:
Groovy
dependencies { // Use to implement camera viewfinders implementation "androidx.camera.viewfinder:viewfinder-view:1.6.0-rc01" implementation "androidx.camera.viewfinder:viewfinder-compose:1.6.0-rc01" implementation "androidx.camera.viewfinder:viewfinder-core:1.6.0-rc01" }
Kotlin
dependencies { // Use to implement camera viewfinders implementation("androidx.camera.viewfinder:viewfinder-view:1.6.0-rc01") implementation("androidx.camera.viewfinder:viewfinder-core:1.6.0-rc01") implementation("androidx.camera.viewfinder:viewfinder-compose:1.6.0-rc01") }
מידע נוסף זמין במאמר הוספת יחסי תלות ב-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.
גרסה 1.6
גרסה 1.6.0-rc01
25 בפברואר 2026
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.6.0-rc01, androidx.camera.viewfinder:viewfinder-core:1.6.0-rc01 וגם androidx.camera.viewfinder:viewfinder-view:1.6.0-rc01 יוצאות. גרסה 1.6.0-rc01 מכילה את השמירות האלה.
גרסה 1.6.0-beta02
11 בפברואר 2026
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.6.0-beta02, androidx.camera.viewfinder:viewfinder-core:1.6.0-beta02 וגם androidx.camera.viewfinder:viewfinder-view:1.6.0-beta02 יוצאות. גרסה 1.6.0-beta02 מכילה את השמירות האלה.
גרסה 1.6.0-beta01
28 בינואר 2026
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.6.0-beta01, androidx.camera.viewfinder:viewfinder-core:1.6.0-beta01 וגם androidx.camera.viewfinder:viewfinder-view:1.6.0-beta01 יוצאות. גרסה 1.6.0-beta01 מכילה את השמירות האלה.
גרסה 1.6.0-alpha02
17 בדצמבר 2025
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.6.0-alpha02, androidx.camera.viewfinder:viewfinder-core:1.6.0-alpha02 וגם androidx.camera.viewfinder:viewfinder-view:1.6.0-alpha02 יוצאות. גרסה 1.6.0-alpha02 מכילה את השמירות האלה.
גרסה 1.6.0-alpha01
22 באוקטובר 2025
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.6.0-alpha01, androidx.camera.viewfinder:viewfinder-core:1.6.0-alpha01 וגם androidx.camera.viewfinder:viewfinder-view:1.6.0-alpha01 יוצאות. גרסה 1.6.0-alpha01 מכילה את השמירות האלה.
שינויים ב-API
- הצגנו את ברירת המחדל של מסגרת התצוגה המקדימה
ImplementationModeבאמצעות ה-API הציבורי החדשViewfinderDefaults.implementationMode. ההגדרה הזו משמשת עכשיו כברירת מחדל גם עבורViewfinderViewוגם עבור רכיב ה-Viewfinder. (Ic3f52)
גירסה 1.5
גרסה 1.5.3
28 בינואר 2026
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.5.3, androidx.camera.viewfinder:viewfinder-core:1.5.3 וגם androidx.camera.viewfinder:viewfinder-view:1.5.3 יוצאות. גרסה 1.5.3 מכילה את השמירות האלה.
גרסה 1.5.2
4 בדצמבר 2025
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.5.2, androidx.camera.viewfinder:viewfinder-core:1.5.2 וגם androidx.camera.viewfinder:viewfinder-view:1.5.2 יוצאות. גרסה 1.5.2 מכילה את השמירות האלה.
גירסה 1.5.1
8 באוקטובר 2025
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.5.1, androidx.camera.viewfinder:viewfinder-core:1.5.1 וגם androidx.camera.viewfinder:viewfinder-view:1.5.1 יוצאות. גרסה 1.5.1 מכילה את השמירות האלה.
גרסה 1.5.0
10 בספטמבר 2025
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.5.0, androidx.camera.viewfinder:viewfinder-core:1.5.0 וגם androidx.camera.viewfinder:viewfinder-view:1.5.0 יוצאות. גרסה 1.5.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.4.0:
זו הגרסה היציבה הראשונה של ספריית Camera Viewfinder, שמספקת ממשקי API חזקים, מודעים למחזור החיים וקלים לשימוש שמבוססים על View ו-Compose. הרכיבים האלה מיועדים לשמש כעינית של מצלמה, ואפשר לשלב אותם ישירות עם Camera2.
בנוסף, בגרסה הזו הונח הבסיס לארטיפקט androidx.camera:camera-compose החדש, שכולל את CameraXViewfinder, עינית שמבוססת על Compose ומשתלבת בצורה חלקה עם SurfaceRequest CameraX, בדומה לאופן שבו PreviewView פועל בפריסות מבוססות-View. חלק מהשינויים החשובים ביותר כוללים:
- העברה של ארטיפקטים: כדי לשפר את המודולריות, הארטיפקטים של Viewfinder הועברו לקבוצת ספרייה משלהם. מפתחים שהשתמשו בעבר בתלות של
androidx.camera:camera-viewfinder*צריכים לעבור ל-androidx.camera.viewfinder:viewfinder-*. - ייצוב ושיפורים של ה-API: ממשק ה-API עבר ליטוש לקראת הגרסה היציבה הזו. השינויים כוללים שינוי השם של
CameraViewfinderל-ViewfinderViewכדי לשקף טוב יותר את הרבגוניות שלו, ארגון מחדש של חבילות כדי לשפר את הבהירות והפיכתViewfinderSurfaceRequestלסוג נתונים בלתי משתנה כדי לשפר את הניהול של מצבים צפויים. - עדכונים ב-Compose API: ה-API של Compose
Viewfinderתומך עכשיו ב-ContentScaleוב-Alignmentכדי לאפשר שליטה מדויקת באופן שבו זרם המצלמה מוצג בתוך הקונטיינר שלו, בדומה להתנהגות של רכיב ה-androidx.compose.foundation.Imageהסטנדרטי. - ניהול מחזור החיים של Surface:
ViewfinderSurfaceSessionממשיך לפעול גם אחרי שינויים בהגדרות ואירועים במחזור החיים ב-API 29 ומעלה. השינוי הזה נועד לצמצם את מספר הפריימים שנשמטים ולספק חוויית משתמש חלקה יותר. - ברירות מחדל של מצב ההטמעה:
Viewfinderמוגדר עכשיו כברירת מחדל כImplementationModeחכם שבוחר באופן אוטומטי את ההטמעה הבסיסית הטובה ביותר. הוא נותן עדיפות ל-SurfaceView(מצבEXTERNAL) שמניב ביצועים טובים, ובמקרים של רמות API ישנות יותר או מכשירים עם בעיות תאימות ידועות, הוא עובר בצורה חלקה ל-TextureView(מצבEMBEDDED) שתואם יותר. עדיין אפשר לבטל את ההתנהגות הזו כדי לתת למפתחים שליטה מלאה.
תיקוני באגים
- ה-Composable
Viewfinderפועל עכשיו בצורה תקינה בתוךPagerשל Compose ועםmovableContentOf(), וכך מבטיח שהמשטח יאופס וינוהל בצורה תקינה בתרחישים מורכבים של ממשק משתמש. (I0d9be, I79432) - תוקנה בעיה ב-Android 10 וב-Android 11 שבה
Viewfinderשמבוסס עלSurfaceViewיכול היה להופיע מתוח כשבוצעו טרנספורמציות. (Icc77c)
גרסה 1.5.0-rc01
13 באוגוסט 2025
הגרסאות androidx.camera.viewfinder:viewfinder-compose:1.5.0-rc01, androidx.camera.viewfinder:viewfinder-core:1.5.0-rc01 וגם androidx.camera.viewfinder:viewfinder-view:1.5.0-rc01 יוצאות. גרסה 1.5.0-rc01 מכילה את השמירות האלה.
תיקוני באגים
- העברת ברירת המחדל
minSdkמ-API 21 ל-API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
גרסה 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) בוחר עכשיו בצורה חכמה ביןEXTERNAL(לביצועים) לביןEMBEDDED(לתאימות בגרסאות קודמות של API או במכשירים עם באגים). אפשר לשנות את ההתנהגות הזו באמצעות הגדרות מפורשות ב-ViewfinderSurfaceRequestאו מאפייני XML (ב-API שמבוסס על View). (Iecd3a) - שיפור הניהול של סשנים ב-Surface על ידי שמירת
ViewfinderSurfaceSessionפעיל לאורך מחזורי החיים של יצירה/הסרה של Surface כשמשתמשים ב-TextureView או ב-SurfaceView ב-API 29 ומעלה. (I112d9) - ה-
Viewfinderמוודא עכשיו שה-Surfaces ישוחררו בזמן הנכון, רק כשהסשן כבר לא משתמש בהם, ולא ישוחררו תמיד כשה-Composable מושמד. ב-EXTERNAL(SurfaceView), ההתנהגות הזו זמינה כרגע רק ב-API 29 ומעלה. ב-EMBEDDED(TextureView), ההתנהגות הזו קיימת בכל רמות ה-API. (I9a03f) - ה-
Viewfinderמטפל עכשיו בצורה נכונה בהחלפת משטח בתרחישים כמו כשמכוון המצלמהEXTERNALברמת API 28 ומטה יוצא מהמסך או אםViewfinder(עםImplementationModeכלשהו) הוא חלק מ-moveableContentOf(). (I79432) - Composable
Viewfinderפועל עכשיו בצורה תקינה עםPagerשל Compose. השינוי הזה מבטיח שאפשר לאפס את ה-Composable בהצלחה על ידי הטמעה של הקריאה החוזרת (callback)onResetשלAndroidView, עם תמיכה בהטמעות שלEMBEDDEDושלEXTERNAL. (I0d9be) - תוקנה בעיה ב-Android 10/11 שבה
EXTERNALViewfinderיכול להופיע מתוח או לא תקין בגלל פעולות שינוי (כמו שינוי גודל או תרגום) שמוחלות מוקדם מדי. המערכת מחכה עכשיו ליצירת הרכיב 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 מכילה את השמירות האלה.
- זוהי גרסת הבטא הרשמית הראשונה של עיניות מבוססות-תצוגה ומבוססות-קומפוזיציה, שהן גמישות מספיק לשימוש עם Camera2. אם אתם מחפשים רכיב View או composable לשימוש עם CameraX, כדאי לעיין במאמרים
PreviewViewוCameraXViewfinder.
תכונות חדשות
- אפשר עכשיו להשתמש ב
ContentScaleובAlignmentבחיפושית שמבוססת על כתיבת הודעה כדי לשנות את הגודל של המשטח המוצג ולמקם אותו בתוך המאגר שלו, בדומה לאופן הפעולה שלandroidx.compose.foundation.Image. (Ibcea3)
שינויים ב-API
-
TransformationInfoכולל עכשיו ערכי ברירת מחדל לכל הארגומנטים. כך אפשר ליצור Viewfinders בליTransformationInfo, שברירת המחדל שלהם תהיה סיבוב מקור של 0, ללא שיקוף מקור וללא חיתוך מלבני. (I2b1b2) - ה-Composable Viewfinder מקבל עכשיו lambda נגרר כדי לקבל סשן Surface, בדומה ל-
AndroidExternalSurface. פונקציית ה-lambda שסופקה משתמשת ב-ViewfinderInitScopeכמקבל, מה שמאפשר להתקין קריאה חוזרת כדי לקבל סשנים חדשים של Surface. כשסשנים כאלה יוצאים מההיקף, המשאבים שמוחזקים על ידי Viewfinder משתחררים אוטומטית. (Ib2b0d) -
ViewfinderSurfaceRequest.Builder.populateFromCharacteristicsהוסר והוחלף בסט מקביל של ממשקי API סטטיים שאפשר להשתמש בהם כדי ליצורTransformationInfo, שיפיק את אותה טרנספורמציה כמוpopulateFromCharacteristics. ה-methods הסטטיות האלה נוספות למחלקהCamera2TransformationInfo. (Idc6af) -
ViewfinderSurfaceRequestלא כולל יותר ממשקי API אסינכרוניים לאחזור הפלטפורמה. עכשיו זה סוג נתונים שלא ניתן לשינוי. ממשקי ה-API לאחזור הפלטפורמה הועברו עכשיו אל עינית המצלמה. (I30127) - השם של
CameraViewfinderשונה ל-ViewfinderViewכדי שיהיה תואם לשם של רכיב ה-Viewfinder שאפשר להשתמש בו עם מקורות נוספים ולא רק עם מקורות של מצלמות. (Id9e6b) - כיתות מ-
viewfinder-viewהועברו לחבילת המשנהandroidx.camera.viewfinder.viewמהחבילהandroidx.camera.viewfinder. (I6cb44) - נוספו ממשקי API חדשים ל-Viewfinder שמבוסס על צפייה, שמאפשרים להגדיר את הסיבוב של המקור, את השיקוף ואת מלבן החיתוך. מחלקת
TransformationInfoזהה למחלקה שבה נעשה שימוש ב-Viewfinder מבוסס-Compose. (I907c3) - התכונה 'מציאת מיקום' שמבוססת על צפיות משתמשת עכשיו בממשקי
ViewfinderSurfaceRequestAPI חדשים שלא מטפלים יותר בתגובה של Surface באופן פנימי. במקום להחזיר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 מכילה את השמירות האלה.
גרסה 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 לשימוש ב-API שקשור ל-Android 15. אפליקציות שמשתמשות בספריות CameraX יצטרכו גם לשדרג את הגדרת התצורהcompileSdkשלהן. (Ic80cd) - הספרייה הזו משתמשת עכשיו באנוטציות של JSpecify nullness, שהן אנוטציות של שימוש בטיפוסים. מפתחי 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 מכילה את השמירות האלה.
שינויים ב-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 מכילה את השמירות האלה.
גרסה 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
לא צריך לבצע שינויים בקוד כדי לעבור לשימוש בגרסה החדשה. הקואורדינטות הישנות של Viewfinder maven לא יקבלו יותר עדכונים.
בנוסף, אם אתם משתמשים ב-Compose עם CameraX, ספרייה חדשה שמתמקדת ב-Compose זמינה עכשיו בגרסת אלפא: androidx.camera:camera-compose. הספרייה הזו מספקת את CameraXViewfinder, שהוא Viewfinder שניתן להרכבה ומתאים ל-Compose, ומבצע התאמה של SurfaceRequest של CameraX ל-Compose, בדומה לאופן שבו PreviewView פועל עבור תצוגות.