Exifinterface
آخرین به روز رسانی | انتشار پایدار | کاندید را آزاد کنید | نسخه بتا | انتشار آلفا |
---|---|---|---|---|
13 نوامبر 2024 | 1.3.7 | - | - | 1.4.0-alpha01 |
اعلام وابستگی ها
برای افزودن وابستگی به Exifinterface، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.
وابستگیهای مصنوعات مورد نیاز خود را در فایل build.gradle
برای برنامه یا ماژول خود اضافه کنید:
شیار
dependencies { implementation "androidx.exifinterface:exifinterface:1.3.7" }
کاتلین
dependencies { implementation("androidx.exifinterface:exifinterface:1.3.7") }
برای اطلاعات بیشتر درباره وابستگیها، به افزودن وابستگیهای ساخت نگاه کنید.
بازخورد
بازخورد شما به بهتر شدن Jetpack کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.
برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.
نسخه 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 با ارتفاع یا عرض بیشتر از 8191 پیکسل ( b/342697059 ) خروجی خراب را برطرف کنید.
- این کتابخانه اکنون از حاشیهنویسیهای پوچ JSpecify استفاده میکند که نوع استفاده هستند. توسعه دهندگان Kotlin باید از آرگومان های کامپایلر زیر برای اعمال استفاده صحیح استفاده کنند:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
( 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 حاوی این commit ها است.
رفع اشکال
- هنگام تلاش برای نوشتن یک بخش JPEG APP1 که خیلی بزرگ است، یک استثنا از
ExifInterface.saveAttributes()
پرتاب کنید (قبلاً یک قطعه APP1 نامعتبر با طول نادرست، کوتاه شده مینویسیم: ( b/263747161 )). پس از مواجهه با یک آفست IFD نامعتبر، تجزیه را ادامه دهید (تجزیه قبلی بلافاصله متوقف می شد، که می تواند منجر به بازگشت مقادیر نادرست شود: ( b/264729367 )).
نسخه 1.3.6
نسخه 1.3.6
8 فوریه 2023
androidx.exifinterface:exifinterface:1.3.6
منتشر شد. نسخه 1.3.6 حاوی این commit ها است.
رفع اشکال
- خواندن بیت آلفا از تکه های WebP VP8L ( b/255405635 ) را برطرف کنید.
نسخه 1.3.5
نسخه 1.3.5
24 اکتبر 2022
androidx.exifinterface:exifinterface:1.3.5
منتشر شد. نسخه 1.3.5 حاوی این commit ها است.
رفع اشکال
- دو مورد از
saveAttributes()
که فایلهای WebP نامعتبر را تولید میکند را برطرف کنید.
نسخه 1.3.4
نسخه 1.3.4
5 اکتبر 2022
androidx.exifinterface:exifinterface:1.3.4
منتشر شد. نسخه 1.3.4 حاوی این commit ها است.
رفع اشکال
- پشتیبانی برای ذخیره ویژگی ها در فایل های DNG را حذف کنید. پشتیبانی اضافه شده در 1.3.3 ناقص بود و فایل های خراب تولید می کرد.
نسخه 1.3.3
نسخه 1.3.3
4 آگوست 2021
androidx.exifinterface:exifinterface:1.3.3
منتشر شد. نسخه 1.3.3 حاوی این commit ها است.
رفع اشکال
- رفع تجزیه برچسب های مربوط به بخش فرعی. ( aosp/1508143 )
- هنگام فراخوانی setDataSource از RuntimeException جلوگیری کنید. ( 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 حاوی این commit ها است.
رفع اشکال
- به
SRATIONAL
برایGPS_LATITUDE
وGPS_LONGITUDE
اجازه میدهد. - پشتیبانی برای خواندن/نوشتن فرمت ثانویه (01-01-2020 00:00:00) تگ DateTime اضافه شده است.
- از حذف موقت فایل مبدا هنگام فراخوانی saveAttribute() جلوگیری کرد.
نسخه 1.3.1
نسخه 1.3.1
14 اکتبر 2020
androidx.exifinterface:exifinterface:1.3.1
منتشر شد. نسخه 1.3.1 حاوی این commit ها است.
رفع اشکال
- اجرای saveAttributes را برای نگه داشتن داده های تصویر در MediaProvider برطرف کنید
نسخه 1.3.0
نسخه 1.3.0
16 سپتامبر 2020
androidx.exifinterface:exifinterface:1.3.0
منتشر شد. نسخه 1.3.0 حاوی این commit ها است.
تغییرات عمده از 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 حاوی این commit ها است.
نسخه 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
یک مقدار معتبر است - دریافت کننده های ساخته شده مربوط به DateTime مقدار افست (+/-) رشته تاریخ را در نظر می گیرند.
- بافر غیرضروری را که باعث استثناء OutOfMemory برای فایلهای تصویری بزرگ میشد، حذف کرد.
- محلی پیش فرض را روی US تنظیم کنید
- جایگزین افزودن «.tmp» برای ایجاد فایلهای موقت به اضافه کردن پیشوند شد.
نسخه 1.3.0-alpha01
19 فوریه 2020
androidx.exifinterface:exifinterface:1.3.0-alpha01
منتشر شد. نسخه 1.3.0-alpha01 حاوی این commit ها است.
تغییرات API
- یک متد جدید اضافه کرد:
ExifInterface.getGpsDateTime()
نسخه 1.2.0
نسخه 1.2.0
1 آوریل 2020
androidx.exifinterface:exifinterface:1.2.0
منتشر شد. نسخه 1.2.0 حاوی این commit ها است.
تغییرات عمده از 1.1.0
- اضافه شدن پشتیبانی برای افزودن EXIF به فایل های PNG
- پشتیبانی از فایل های WebP و فقط جریان داده EXIF اضافه شده است
- برای بررسی اینکه آیا نوع mime مشخص شده پشتیبانی میشود، یک API اضافه کرد
- برچسبهای بیشتری برای زمان افست اضافه شد:
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 حاوی این commit ها است.
رفع اشکال
- رفع مشکلی که در آن فایلهای 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 تغییر می کند
- برای بررسی اینکه آیا نوع mime مشخص شده پشتیبانی میشود، یک API اضافه کرد
- برچسبهای خواندن و نوشتن 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 حاوی این commit ها است .
رفع اشکال
- برای جلوگیری از
ArrayIndexOutOfBoundsException
درloadAttributes
یک نام قالب گمشده (IFD) اضافه کرد. - هنگامی که هنگام فراخوانی
saveAttributes
یک استثنا اتفاق می افتد، از حذف فایل مبدا جلوگیری کرد - هنگامی که پس از بازنویسی یک فایل، به
saveAttributes()
فراخوانی میشود، مشکل استثنا برطرف شد.
نسخه 1.1.0-beta01
2 جولای 2019
androidx.exifinterface:exifinterface:1.1.0-beta01
منتشر شد. commit های موجود در این نسخه را می توانید در اینجا بیابید.
ویژگی های جدید
- زمانی که
null
برای آرگومان های@NonNull
تنظیم شده باشد،NullPointerException
پرتاب می کند - پشتیبانی از تگ های XMP
API تغییر می کند
- روش های بیشتری برای دریافت اطلاعات ویژگی اضافه شده است
-
hasAttribute
،getAttributeBytes
وgetAttributesRange
رفع اشکال
- جلوگیری از نشت حافظه توصیفگر فایل
نسخه 1.1.0-alpha01
13 مارس 2019
androidx.exifinterface:exifinterface:1.1.0-alpha01
منتشر شد. لیست کامل commit های موجود در این نسخه را می توانید در اینجا بیابید.
ویژگی های جدید
- پشتیبانی از فرمت HEIF
API تغییر می کند
- سازنده های بیشتری از ExifInterface اضافه شده است
- اشتباه تایپی رفع شد:
TAG_CAMARA_OWNER_NAME
->TAG_CAMERA_OWNER_NAME
رفع اشکال
- بررسی سرریز احتمالی برای تصویر بند انگشتی ( aosp/748608 ) رفع شد