Эксиинтерфейс
Последнее обновление | Стабильный выпуск | Кандидат на выпуск | Бета-версия | Альфа-релиз |
---|---|---|---|---|
13 ноября 2024 г. | 1.3.7 | - | - | 1.4.0-альфа01 |
Объявление зависимостей
Чтобы добавить зависимость от Exifinterface, вам необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .
Добавьте зависимости для нужных вам артефактов в файл build.gradle
для вашего приложения или модуля:
Groovy
dependencies { implementation "androidx.exifinterface:exifinterface:1.3.7" }
Kotlin
dependencies { implementation("androidx.exifinterface:exifinterface:1.3.7") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.
Дополнительную информацию см . в документации по системе отслеживания проблем .
Версия 1.4
Версия 1.4.0-альфа01
13 ноября 2024 г.
Выпущен androidx.exifinterface:exifinterface:1.4.0-alpha01
. Версия 1.4.0-alpha01 содержит эти коммиты .
Новые возможности
- Добавьте поддержку чтения данных XMP из изображений HEIF.
- Добавьте поддержку чтения Exif и XMP из изображений AVIF.
Изменения API
- Укажите, что параметром
location
дляsetGpsInfo
является@Nullable
и что передача значенияnull
приведет к неработоспособности. ( If924c , б/236484611 )
Исправления ошибок
- Продолжите анализ после обнаружения недопустимого смещения IFD ( b/264729367 ).
- Обработка изображений WebP, которые неправильно содержат маркер JPEG APP1 перед данными Exif ( b/281638358 ).
- Убедитесь, что изменения XMP в файлах JPEG с отдельным сегментом XMP сохраняются в том же отдельном сегменте XMP с помощью
saveAttributes()
вместо записи в тег TIFF/Exif 700, который не поддерживается спецификацией XMP и где многие инструменты их не найдут. . - Избегайте дублирования данных XMP из отдельного сегмента в каталог предварительного просмотра TIFF при сохранении ( b/309843390 ).
- Повысьте точность двойных преобразований в рациональные. ( б/312680558 ).
- Примите рациональный формат (x/y) для
setAttribute
для «устаревших» рациональных тегов, которые автоматически преобразуются в десятичный формат при возврате изgetAttribute
( b/312680558 ). - Убедитесь, что данные XMP, добавленные в изображение JPEG, которое еще не содержит XMP, записываются в отдельный сегмент, как указано в спецификации XMP. Документально подтверждено, что
ExifInterface
предпочитает XMP в теге Exif 700 в изображениях JPEG (нарушая спецификацию), поэтому это поведение сохраняется при чтении/записи изображений с существующими данными XMP. - Исправьте поврежденный вывод при записи изображений WebP с высотой или шириной более 8191 пикселей ( b/342697059 ).
- Эта библиотека теперь использует аннотации NULL NULL 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, рекомендуется выполнить обновление до 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 содержит эти коммиты.
Исправления ошибок
- Удалить поддержку сохранения атрибутов в файлах DNG. Поддержка, добавленная в версии 1.3.3, была неполной и приводила к повреждению файлов.
Версия 1.3.3
Версия 1.3.3
4 августа 2021 г.
Выпущен androidx.exifinterface:exifinterface:1.3.3
. Версия 1.3.3 содержит эти коммиты.
Исправления ошибок
- Исправлен анализ тегов, связанных с подразделами. ( аосп/1508143 )
- Предотвратите RuntimeException при вызове setDataSource. ( c8e66e9 )
- Предотвратите бесконечное зацикливание SkipBytes. ( fdbe88b )
- Перехватывать RuntimeException из MediaMetadataRetriever. ( 389б21а )
- Добавить поддержку сохранения атрибутов для файлов 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
. - Добавлена поддержка чтения/записи вторичного формата (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 содержит эти коммиты.
Исправления ошибок
- Исправлена реализация 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-бета01
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 для больших файлов изображений.
- Установить локаль по умолчанию в США
- Добавление «.tmp» для создания временных файлов заменено на добавление префикса.
Версия 1.3.0-альфа01
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-бета01
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-бета01
2 июля 2019 г.
Выпущен androidx.exifinterface:exifinterface:1.1.0-beta01
. Коммиты, включенные в эту версию, можно найти здесь .
Новые возможности
- Выдает исключение
NullPointerException
, когда для аргументов@NonNull
установленоnull
- Поддержка тегов XMP.
Изменения API
- Добавлено больше методов для получения информации об атрибутах.
-
hasAttribute
,getAttributeBytes
иgetAttributesRange
Исправления ошибок
- Предотвращение утечки памяти файлового дескриптора
Версия 1.1.0-альфа01
13 марта 2019 г.
Выпущен androidx.exifinterface:exifinterface:1.1.0-alpha01
. Полный список коммитов, включённых в эту версию, можно найти здесь .
Новые возможности
- Поддержка формата HEIF
Изменения API
- Добавлено больше конструкторов ExifInterface.
- Исправлена опечатка:
TAG_CAMARA_OWNER_NAME
->TAG_CAMERA_OWNER_NAME
Исправления ошибок
- Исправлена проверка возможного переполнения миниатюрного изображения ( aosp/748608 ).