Exifinterface
| העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
|---|---|---|---|---|
| 3 בדצמבר 2025 | 1.4.2 | - | - | - |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-Exifinterface, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.
מוסיפים את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:
מגניב
dependencies { implementation "androidx.exifinterface:exifinterface:1.4.2" }
Kotlin
dependencies { implementation("androidx.exifinterface:exifinterface:1.4.2") }
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ב-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לשמוע מכם אם תגלו בעיות חדשות או אם יש לכם רעיונות לשיפור הספרייה הזו. לפני שיוצרים ספרייה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להוסיף את ההצבעה שלכם לבעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא הכלי למעקב אחר בעיות.
גרסה 1.4
גרסה 1.4.2
3 בדצמבר 2025
androidx.exifinterface:exifinterface:1.4.2 משוחרר. גרסה 1.4.2 מכילה את הקומטים האלה.
תיקוני באגים
- תמיכה בניתוח של קובצי JPEG עם בייטים נוספים (מותרים) של 0xFF לפני כל סמן.
גרסה 1.4.1
23 באפריל 2025
androidx.exifinterface:exifinterface:1.4.1 משוחרר. גרסה 1.4.1 מכילה את הקומטים האלה.
תיקוני באגים
- תוקן באג שבו העברת ערך null אל
setAttributeעבורTAG_XMPגרמה להצגת חריגה.
גרסה 1.4.0
26 בפברואר 2025
androidx.exifinterface:exifinterface:1.4.0 משוחרר. גרסה 1.4.0 מכילה את הקומטים האלה.
גרסה 1.4.0-rc01
29 בינואר 2025
הגרסה androidx.exifinterface:exifinterface:1.4.0-rc01 יוצאת ללא שינויים מאז גרסת הבטא beta01. גרסה 1.4.0-rc01 מכילה את הקומטים האלה.
גרסה 1.4.0-beta01
15 בינואר 2025
androidx.exifinterface:exifinterface:1.4.0-beta01 משוחרר. גרסה 1.4.0-beta01 מכילה את ההתחייבויות האלה.
שינויים ב-API
- עדכון הטיפול ב-HEIC XMP כדי להעדיף נתוני XMP מקטע נפרד בקובץ, במקום תג 700 בנתוני Exif.
תיקוני באגים
- תיקון השיטה
ExifInterface.getThumbnail*()כדי שתפעל בצורה תקינה אחרי קריאה ל-saveAttributes()(בעבר הקריאות הצליחו, אבל התוצאה הייתה שגויה או לא מוגדרת) - תיקון הטיפול ב-PNG XMP כדי לקרוא ולכתוב את הנתח הנפרד iTXt XMP במקום תג 700 בתוך הנתח eXIf.
- תוקנה בעיה של
WebPנתונים פגומים בתמונות כשמעבדים קובצי תמונות עם נתונים לא תקינים בסוף הקובץ שאינם בפורמט WebP. (b/385766064).
גרסה 1.4.0-alpha01
13 בנובמבר 2024
androidx.exifinterface:exifinterface:1.4.0-alpha01 משוחרר. גרסה 1.4.0-alpha01 מכילה את הקומטים האלה.
תכונות חדשות
- הוספת תמיכה בקריאת נתוני XMP מתמונות HEIF.
- הוספנו תמיכה בקריאת Exif ו-XMP מתמונות AVIF.
שינויים ב-API
- מציינים שהפרמטר
locationשלsetGpsInfoהוא@Nullable, והעברת הערךnullתגרום לפעולה שלא תתבצע. (If924c, b/236484611)
תיקוני באגים
- המשך ניתוח אחרי שנתקלתי בהיסט לא תקין של IFD (b/264729367).
- טיפלנו בתמונות WebP שכוללות באופן שגוי סמן JPEG APP1 לפני נתוני ה-Exif שלהן (b/281638358).
- כדי לוודא ששינויים ב-XMP בקובצי JPEG עם פלח XMP נפרד מאוחסנים באותו פלח XMP נפרד על ידי
saveAttributes(), ולא נכתבים בתג TIFF/Exif 700 שלא נתמך במפרט XMP ושכלים רבים לא ימצאו אותם, - מונעים שכפול של נתוני XMP מפלח נפרד לספריית התצוגה המקדימה של TIFF כששומרים (b/309843390).
- שיפור הדיוק של המרות מ-double ל-rational. (b/312680558).
- קבלת פורמט רציונלי (x/y) ל-
setAttributeעבור תגי רציונל מדור קודם שעוברים המרה אוטומטית לעשרוני כשהם מוחזרים מ-getAttribute(b/312680558). - צריך לוודא שנתוני XMP שנוספו לתמונת JPEG שלא מכילה כבר XMP נכתבים לפלח נפרד, כפי שמצוין במפרט XMP.
ExifInterfaceמתועד כמעדיף את ה-XMP בתג Exif 700 בתמונות JPEG (בניגוד למפרט), ולכן ההתנהגות הזו נשמרת כשקוראים או כותבים תמונות עם נתוני XMP קיימים. - תוקן פלט פגום כשכותבים תמונות WebP עם גובה או רוחב גדולים מ-8,191 פיקסלים (b/342697059).
- הספרייה הזו משתמשת עכשיו בהערות לגבי ערכי null של JSpecify, שהן הערות לשימוש בסוג. מפתחים ב-Kotlin צריכים להשתמש בארגומנט המהדר הבא כדי לאכוף שימוש נכון:
-Xjspecify-annotations=strict(זו ברירת המחדל החל מגרסה 2.1.0 של מהדר Kotlin). (I5cd0f, b/326456246) - הסרנו את האפשרות ליצור באופן ידני תרשים של הגישה לממשקי API חדשים של הפלטפורמה, כי זה קורה באופן אוטומטי באמצעות מידול API כשמשתמשים ב-R8 עם AGP 7.3 ואילך (למשל R8 גרסה 3.3), ובכל הגרסאות כשמשתמשים ב-AGP 8.1 ואילך (למשל D8 גרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלץ לעדכן לגרסה 8.1 של D8 או לגרסה מאוחרת יותר. למידע נוסף, מומלץ לעיין במאמר הזה. (If6b4c, b/345472586)
גרסה 1.3.7
גרסה 1.3.7
13 בדצמבר 2023
androidx.exifinterface:exifinterface:1.3.7 משוחרר. גרסה 1.3.7 מכילה את הקומיטים האלה.
תיקוני באגים
- הוספת חריג מ-
ExifInterface.saveAttributes()כשמנסים לכתוב פלח JPEG APP1 גדול מדי (בעבר היינו כותבים פלח APP1 לא תקין עם אורך שגוי וקטום:(b/263747161)). המשך ניתוח אחרי שנתקלים בהיסט לא תקין של IFD (בעבר, הניתוח היה נעצר באופן מיידי, מה שיכול היה להוביל להחזרת ערכים שגויים: (b/264729367)).
גרסה 1.3.6
גרסה 1.3.6
8 בפברואר 2023
androidx.exifinterface:exifinterface:1.3.6 משוחרר. גרסה 1.3.6 מכילה את הקומיטים האלה.
תיקוני באגים
- תוקן קריאת ביט אלפא מחלקים של WebP VP8L (b/255405635).
גרסה 1.3.5
גרסה 1.3.5
24 באוקטובר 2022
androidx.exifinterface:exifinterface:1.3.5 משוחרר. גרסה 1.3.5 מכילה את הקומיטים האלה.
תיקוני באגים
- תיקנו שני מקרים של
saveAttributes()שבהם נוצרו קובצי WebP לא תקינים.
גרסה 1.3.4
גרסה 1.3.4
5 באוקטובר 2022
androidx.exifinterface:exifinterface:1.3.4 משוחרר. גרסה 1.3.4 מכילה את הקומיטים האלה.
תיקוני באגים
- הסרנו את התמיכה בשמירת מאפיינים בקובצי DNG. התמיכה שנוספה בגרסה 1.3.3 הייתה חלקית ויצרה קבצים פגומים.
גרסה 1.3.3
גרסה 1.3.3
4 באוגוסט 2021
androidx.exifinterface:exifinterface:1.3.3 משוחרר. גרסה 1.3.3 מכילה את הקומיטים האלה.
תיקוני באגים
- תיקון תגים שקשורים ל-subsec. (aosp/1508143)
- מניעת RuntimeException כשמתקשרים אל setDataSource. (c8e66e9)
- למנוע מצב שבו skipBytes יפעל בלולאה אינסופית. (fdbe88b)
- Catch RuntimeException from MediaMetadataRetriever. (389b21a)
- הוספנו תמיכה בשמירת מאפיינים לקובצי DNG (3017dbc)
- מחליפים תגים שאינם תמונות ממוזערות בתגים של תמונות ממוזערות. (e1b916d)
גרסה 1.3.2
גרסה 1.3.2
2 בדצמבר 2020
androidx.exifinterface:exifinterface:1.3.2 משוחרר. גרסה 1.3.2 מכילה את הקומיטים האלה.
תיקוני באגים
- מתן הרשאה ל-
SRATIONALב-GPS_LATITUDEוב-GPS_LONGITUDE. - נוספה תמיכה בקריאה/כתיבה של פורמט משני (2020-01-01 00:00:00) של תג DateTime.
- מנענו את ההסרה הזמנית של קובץ המקור בזמן הקריאה ל-saveAttribute().
גרסה 1.3.1
גרסה 1.3.1
14 באוקטובר 2020
androidx.exifinterface:exifinterface:1.3.1 משוחרר. גרסה 1.3.1 מכילה את הקומיטים האלה.
תיקוני באגים
- תיקון ההטמעה של saveAttributes כדי לשמור את נתוני התמונה ב-MediaProvider
גרסה 1.3.0
גרסה 1.3.0
16 בספטמבר 2020
androidx.exifinterface:exifinterface:1.3.0 משוחרר. גרסה 1.3.0 מכילה את הקומיטים האלה.
שינויים משמעותיים מאז גרסה 1.2.0
- הוספנו תמיכה בכתיבת EXIF בפורמט WebP, כך שתכלול קבצים שמכילים רק נתחי VP8 או VP8L.
- הוסר חיץ מיותר שגרם לחריגות OutOfMemory בקבצי תמונות גדולים.
- בוצעה הסרה של
INVALID_DATE_TIME. במקום זאת, צריך להשתמש בפונקציהNULLכדי להחזיר ערכים לא חוקיים של תאריך ושעה. - הפונקציה
getGpsDateTimeמחזירה עכשיוLong.MIN_VALUEבמקום-1עבור ערך לא תקין.
גרסה 1.3.0-rc01
2 בספטמבר 2020
הגרסה androidx.exifinterface:exifinterface:1.3.0-rc01 הופצה ללא שינויים מאז 1.3.0-beta01. גרסה 1.3.0-rc01 מכילה את הקומיטים האלה.
גרסה 1.3.0-beta01
19 באוגוסט 2020
androidx.exifinterface:exifinterface:1.3.0-beta01 משוחרר. גרסה 1.3.0-beta01 מכילה את הקומיטים האלה.
תכונות חדשות
- הוספנו תמיכה בכתיבת EXIF בפורמט WebP, כולל קבצים שמכילים רק נתחי VP8 או VP8L.
שינויים ב-API
- בוצעה הסרה של
INVALID_DATE_TIME. במקום זאת, משתמשים ב-NULLכדי להחזיר ערך לא חוקי של תאריך ושעה.
תיקוני באגים
- הפונקציה
getGpsDateTimeמחזירהLong.MIN_VALUEבמקום-1כי-1הוא ערך תקין - שינינו את ה-getters שקשורים ל-DateTime כך שיביאו בחשבון את ערך ההיסט (+/-) של מחרוזת התאריך.
- הוסר חיץ מיותר שגרם לחריגות OutOfMemory בקבצי תמונות גדולים.
- הגדרת ברירת המחדל של האזור לארה"ב
- במקום להוסיף את הסיומת .tmp ליצירת קבצים זמניים, נוספה קידומת.
גרסה 1.3.0-alpha01
19 בפברואר 2020
androidx.exifinterface:exifinterface:1.3.0-alpha01 משוחרר. גרסה 1.3.0-alpha01 מכילה את הקומיטים האלה.
שינויים ב-API
- הוספת שיטה חדשה:
ExifInterface.getGpsDateTime()
גרסה 1.2.0
גרסה 1.2.0
1 באפריל 2020
androidx.exifinterface:exifinterface:1.2.0 משוחרר. גרסה 1.2.0 מכילה את הקומיטים האלה.
שינויים משמעותיים מאז גרסה 1.1.0
- נוספה תמיכה בהוספת EXIF לקובצי PNG
- הוספנו תמיכה בקובצי WebP ובנתוני EXIF בלבד
- הוספנו API לבדיקה אם סוג ה-MIME שצוין נתמך
- הוספנו עוד תגים לציון זמן ההתחלה:
TAG_OFFSET_TIME,TAF_OFFSET_TIME_DIGITIZEDו-TAG_OFFSET_TIME_ORIGINAL
גרסה 1.2.0-rc01
19 בפברואר 2020
androidx.exifinterface:exifinterface:1.2.0-rc01 משוחרר. גרסה 1.2.0-rc01 כוללת את הקומיטים האלה.
תיקוני באגים
- תוקנה בעיה שבה קובצי JPEG נשמרו בצורה שגויה אם קובץ ה-JPEG הכיל נתוני XMP
גרסה 1.2.0-beta01
18 בדצמבר 2019
androidx.exifinterface:exifinterface:1.2.0-beta01 משוחרר. גרסה 1.2.0-beta01 מכילה את הקומיטים האלה.
תכונות חדשות
- נוספה תמיכה בהוספת EXIF לקובצי PNG
- הוספנו תמיכה בקריאה ובכתיבה של EXIF מקובצי WebP
- הוספנו תמיכה במקור נתונים של נתוני EXIF בלבד
שינויים ב-API
- הוספנו API לבדיקה אם סוג ה-MIME שצוין נתמך
- הצגת התגים OffsetTime* לקריאה ולכתיבה
תיקוני באגים
- תוקנה בעיה שבה הוחזרו היסטים שגויים עבור
getAttributeRange()
גרסה 1.1.0
גרסה 1.1.0
20 בנובמבר 2019
androidx.exifinterface:exifinterface:1.1.0 משוחרר. גרסה 1.1.0 מכילה את הקומיטים האלה.
שינויים חשובים מאז גרסה 1.0.0
- תמיכה בפורמט HEIF ובתגי XMP נוספים
- הוספנו תמיכה ביצירת אובייקט
ExifInterfaceמ-Fileאו מ-FileDescriptor - נוספו עוד שיטות לאחזור מאפיין:
hasAttribute,getAttributeBytesו-getAttributesRange
גרסה 1.1.0-rc01
9 באוקטובר 2019
androidx.exifinterface:exifinterface:1.1.0-rc01 משוחרר. גרסה 1.1.0-rc01 מכילה את הקומיטים האלה.
תיקוני באגים
- נוסף שם פורמט חסר (IFD) כדי למנוע
ArrayIndexOutOfBoundsExceptionב-loadAttributes - מנענו את המחיקה של קובץ המקור כשמתרחשת חריגה במהלך הקריאה ל-
saveAttributes - תוקנה בעיה בחריגה כשמתבצעת קריאה ל-
saveAttributes()אחרי שקובץ נדרס.
גרסה 1.1.0-beta01
2 ביולי 2019
androidx.exifinterface:exifinterface:1.1.0-beta01 משוחרר. כאן אפשר לראות את הקומיטים שכלולים בגרסה הזו.
תכונות חדשות
- הפונקציה מחזירה
NullPointerExceptionכשמגדירים אתnullעבור@NonNullארגומנטים - תמיכה בתגי XMP
שינויים ב-API
- נוספו שיטות נוספות לקבלת מידע על מאפיינים
-
hasAttribute,getAttributeBytesוגםgetAttributesRange
תיקוני באגים
- מניעת דליפת זיכרון של מתאר קובץ
גרסה 1.1.0-alpha01
13 במרץ 2019
androidx.exifinterface:exifinterface:1.1.0-alpha01 משוחרר. כאן אפשר לראות את הרשימה המלאה של הקומיטים שכלולים בגרסה הזו.
תכונות חדשות
- תמיכה בפורמט HEIF
שינויים ב-API
- נוספו עוד יצרנים של ExifInterface
- תיקון שגיאת הקלדה:
TAG_CAMARA_OWNER_NAME->TAG_CAMERA_OWNER_NAME
תיקוני באגים
- תוקן הבאג שקשור לבדיקה של אפשרות לגלישה בתמונה הממוזערת (aosp/748608)