Exifinterface
העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסה אלפא |
---|---|---|---|---|
13 בנובמבר 2024 | 1.3.7 | - | - | 1.4.0-alpha01 |
הצהרת יחסי תלות
כדי להוסיף תלות ב-Exifinterface, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.
מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle
של האפליקציה או המודול:
Groovy
dependencies { implementation "androidx.exifinterface:exifinterface:1.3.7" }
Kotlin
dependencies { implementation("androidx.exifinterface:exifinterface:1.3.7") }
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במסמכי התיעוד של Issue Tracker.
גרסה 1.4
גרסה 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
תוביל לפעולה ללא תוצאה (No-Op). (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).
- שיפור הדיוק של המרות של מספרים שלמים למספרים רציונליים. (b/312680558).
- קבלת פורמט רציונלי (x/y) ב-
setAttribute
עבור תגים רציונליים 'קודמים' שמומרים באופן אוטומטי לערך עשרוני כשהם מוחזרים מ-getAttribute
(b/312680558). - מוודאים שנתוני XMP שנוספו לתמונה בפורמט JPEG שעדיין לא מכילה XMP נכתבים בפלחים נפרדים, כפי שמצוין במפרט XMP.
ExifInterface
מעדיף את ה-XMP בתג Exif 700 בתמונות JPEG (הפרה של המפרט), ולכן ההתנהגות הזו נשמרת בקריאה או בכתיבת תמונות עם נתוני XMP קיימים. - תיקון פלט פגום בכתיבה של תמונות WebP עם גובה או רוחב גדולים מ-8,191 פיקסלים (b/342697059).
- הספרייה הזו משתמשת עכשיו בהערות של JSpecify לגבי ערכים null, שהן שימוש בסוגים. מפתחי Kotlin צריכים להשתמש בארגומנטים הבאים של המהדר כדי לאכוף שימוש נכון:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I5cd0f, b/326456246) - הסרנו את התיאור הידני של הגישה לממשקי API חדשים של פלטפורמות, כי זה קורה באופן אוטומטי באמצעות בניית מודלים של API כשמשתמשים ב-R8 עם AGP 7.3 ואילך (למשל, R8 גרסה 3.3) ובכל גרסאות ה-build כשמשתמשים ב-AGP 8.1 ואילך (למשל, D8 גרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלצים לעדכן ל-D8 בגרסה 8.1 ואילך. למידע נוסף, מומלץ לעיין במאמר הזה. (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 מכילה את ההצהרות האלה על ביצוע שינויים (commits).
תיקוני באגים
- הסרת התמיכה בשמירת מאפיינים בקובצי DNG. התמיכה שנוספה בגרסה 1.3.3 הייתה חלקית והובילה ליצירת קבצים פגומים.
גרסה 1.3.3
גרסה 1.3.3
4 באוגוסט 2021
androidx.exifinterface:exifinterface:1.3.3
משוחרר. גרסה 1.3.3 מכילה את ההוספות האלה.
תיקוני באגים
- תיקון ניתוח תגים שקשורים לקטעים משניים. (aosp/1508143)
- מניעת הודעת RuntimeException בזמן קריאה ל-setDataSource. (c8e66e9)
- מניעת לולאה אינסופית של skipBytes. (fdbe88b)
- לתפוס את RuntimeException מ-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
- תמיכה מורחבת בכתיבת WebP EXIF, כך שתכלול קבצים שמכילים רק קטעי 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 מכילה את ההצהרות האלה.
תכונות חדשות
- תמיכה מורחבת בכתיבת WebP EXIF, כך שתכלול קבצים שמכילים רק קטעי VP8 או VP8L.
שינויים ב-API
- בוצעה הסרה של
INVALID_DATE_TIME
. במקום זאת, צריך להשתמש ב-NULL
כדי להחזיר ערך זמן-תאריך לא חוקי.
תיקוני באגים
- שינינו את
getGpsDateTime
כך שיחזיר את הערךLong.MIN_VALUE
במקום-1
כי-1
הוא ערך חוקי - שינינו את ה-getters שקשורים ל-DateTime כך שיביאו בחשבון את ערך ההיסט (+/-) של מחרוזת התאריך.
- הוסרו פעולות אגירת נתונים מיותרות שגרמו לחריגות מסוג OutOfMemory בקבצי תמונות גדולים.
- הגדרת שפת ברירת המחדל לארה"ב
- הוספת קידומת במקום הוספת ".tmp" ליצירת קובצי 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 לא נשמרו בצורה נכונה אם היו להם נתוני 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
משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.
תכונות חדשות
- גורם להשלכת
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)