Exifinterface
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
13 novembre 2024 | 1.3.7 | - | - | 1.4.0-alpha01 |
Déclarer des dépendances
Pour ajouter une dépendance sur Exifinterface, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.
Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle
de votre application ou de votre module :
Groovy
dependencies { implementation "androidx.exifinterface:exifinterface:1.3.7" }
Kotlin
dependencies { implementation("androidx.exifinterface:exifinterface:1.3.7") }
Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.
Commentaires
Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Version 1.4
Version 1.4.0-alpha01
13 novembre 2024
Publication d'androidx.exifinterface:exifinterface:1.4.0-alpha01
. La version 1.4.0-alpha01 contient ces commits.
Nouvelles fonctionnalités
- Ajout de la prise en charge de la lecture des données XMP à partir d'images HEIF.
- Ajout de la prise en charge de la lecture d'Exif et de XMP à partir d'images AVIF.
Modifications apportées à l'API
- Indiquez que le paramètre
location
poursetGpsInfo
est@Nullable
et que la transmission denull
entraînera une opération sans effet. (If924c, b/236484611)
Correction de bugs
- Poursuite de l'analyse après avoir rencontré un décalage IFD non valide (b/264729367).
- Gérer les images WebP qui contiennent par erreur un repère JPEG APP1 avant leurs données Exif (b/281638358).
- Assurez-vous que les modifications XMP dans les fichiers JPEG avec un segment XMP distinct sont stockées dans le même segment XMP distinct par
saveAttributes()
, au lieu d'être écrites dans la balise TIFF/Exif 700, qui n'est pas compatible avec la spécification XMP et où de nombreux outils ne les trouveront pas. - Évitez de dupliquer les données XMP d'un segment distinct dans le répertoire d'aperçu TIFF lors de l'enregistrement (b/309843390).
- Amélioration de la précision des conversions de doubles en nombres rationnels. (b/312680558).
- Acceptation du format rationnel (x/y) pour
setAttribute
pour les anciennes balises rationnelles, qui sont automatiquement converties en décimales lorsqu'elles sont renvoyées depuisgetAttribute
(b/312680558). - Assurez-vous que les données XMP ajoutées à une image JPEG qui ne contient pas déjà de XMP sont écrites dans un segment distinct, comme spécifié dans la spécification XMP. Il est documenté que
ExifInterface
préfère le XMP dans la balise Exif 700 dans les images JPEG (ce qui ne respecte pas la spécification). Ce comportement est donc conservé lors de la lecture/écriture d'images avec des données XMP existantes. - Correction de la sortie corrompue lors de l'écriture d'images WebP dont la hauteur ou la largeur est supérieure à 8 191 px (b/342697059).
- Cette bibliothèque utilise désormais les annotations de nullité JSpecify, qui sont des annotations de type d'utilisation. Les développeurs Kotlin doivent utiliser les arguments de compilateur suivants pour appliquer une utilisation correcte:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I5cd0f, b/326456246) - Suppression de la description manuelle de l'accès aux nouvelles API de la plate-forme, car cela se produit automatiquement via la modélisation d'API lorsque vous utilisez R8 avec AGP 7.3 ou version ultérieure (par exemple, R8 version 3.3) et pour tous les builds lorsque vous utilisez AGP 8.1 ou version ultérieure (par exemple, D8 version 8.1). Les clients qui n'utilisent pas AGP sont invités à passer à la version 8.1 de D8 ou ultérieure. Consultez cet article pour en savoir plus. (If6b4c, b/345472586)
Version 1.3.7
Version 1.3.7
13 décembre 2023
Publication d'androidx.exifinterface:exifinterface:1.3.7
. Liste des commits de la version 1.3.7
Correction de bugs
- Génère une exception à partir de
ExifInterface.saveAttributes()
lorsque vous essayez d'écrire un segment JPEG APP1 trop volumineux (auparavant, nous écrivions un segment APP1 non valide avec une longueur incorrecte et tronquée:(b/263747161)). Poursuite de l'analyse après avoir rencontré un décalage IFD non valide (auparavant, l'analyse s'arrêtait immédiatement, ce qui pouvait entraîner le retour de valeurs incorrectes : b/264729367).
Version 1.3.6
Version 1.3.6
8 février 2023
Publication d'androidx.exifinterface:exifinterface:1.3.6
. Liste des commits de la version 1.3.5
Correction de bugs
- Correction de la lecture du bit alpha à partir de fragments WebP VP8L (b/255405635)
Version 1.3.5
Version 1.3.5
24 octobre 2022
Publication d'androidx.exifinterface:exifinterface:1.3.5
. Liste des commits de la version 1.3.5
Correction de bugs
- Correction de deux cas où
saveAttributes()
produit des fichiers WebP non valides.
Version 1.3.4
Version 1.3.4
5 octobre 2022
Publication d'androidx.exifinterface:exifinterface:1.3.4
. Liste des commits de la version 1.3.4
Correction de bugs
- Suppression de la prise en charge de l'enregistrement des attributs pour les fichiers DNG. La prise en charge ajoutée dans la version 1.3.3 était incomplète et produisait des fichiers corrompus.
Version 1.3.3
Version 1.3.3
4 août 2021
Publication d'androidx.exifinterface:exifinterface:1.3.3
. Liste des commits de la version 1.3.3
Correction de bugs
- Correction de l'analyse des balises associées à "subsec". (aosp/1508143)
- Prévention de "RuntimeException" lors de l'appel de "setDataSource". (c8e66e9)
- Prévention de la répétition en boucle de "skipBytes". (fdbe88b)
- Capture de "RuntimeException" depuis "MediaMetadataFetcher". (389b21a)
- Ajout de la prise en charge de l'enregistrement des attributs pour les fichiers DNG. (3017dbc)
- Remplacement des balises qui ne sont pas des miniatures par des balises de type miniature. (e1b916d)
Version 1.3.2
Version 1.3.2
2 décembre 2020
Publication d'androidx.exifinterface:exifinterface:1.3.2
. Liste des commits de la version 1.3.2
Correction de bugs
- Autorisation de
SRATIONAL
pourGPS_LATITUDE
etGPS_LONGITUDE
. - Ajout de la prise en charge de la lecture et de l'écriture d'un format secondaire (2020-01-01 00:00:00) de la balise "DateTime".
- Prévention de la suppression temporaire du fichier d'origine lors de l'appel de "saveAttribute()".
Version 1.3.1
Version 1.3.1
14 octobre 2020
Publication d'androidx.exifinterface:exifinterface:1.3.1
. Liste des commits de la version 1.3.1
Correction de bugs
- Correction de l'implémentation de "saveAttributes" pour conserver les données d'image dans "MediaProvider".
Version 1.3.0
Version 1.3.0
16 septembre 2020
Publication d'androidx.exifinterface:exifinterface:1.3.0
. Liste des commits de la version 1.3.0
Principales modifications depuis la version 1.2.0
- Prise en charge étendue de l'écriture de l'affichage EXIF dans des fichiers WebP afin d'inclure les fichiers ne contenant que des paquets fragmentés VP8 ou VP8L.
- Suppression de la mise en mémoire tampon inutile, à l'origine des exceptions "OutOfMemory" pour les fichiers image volumineux.
- Suppression de
INVALID_DATE_TIME
. Utilisez plutôtNULL
pour renvoyer des valeurs de date et heure non valides. getGpsDateTime
affiche désormaisLong.MIN_VALUE
au lieu de-1
pour une valeur non valide.
Version 1.3.0-rc01
2 septembre 2020
Publication d'androidx.exifinterface:exifinterface:1.3.0-rc01
sans aucune modification par rapport à la version 1.3.0-beta01
. Liste des commits de la version 1.3.0-rc01
Version 1.3.0-beta01
19 août 2020
Publication d'androidx.exifinterface:exifinterface:1.3.0-beta01
. Liste des commits de la version 1.3.0-beta01
Nouvelles fonctionnalités
- Prise en charge étendue de l'écriture de l'affichage EXIF dans des fichiers WebP afin d'inclure les fichiers ne contenant que des paquets fragmentés VP8 ou VP8L.
Modifications apportées à l'API
- Suppression de
INVALID_DATE_TIME
. Utilisez plutôtNULL
pour renvoyer une valeur de date et heure non valide.
Correction de bugs
getGpsDateTime
affiche désormaisLong.MIN_VALUE
au lieu de-1
, car-1
est une valeur valide.- Modification des getters associés à "DateTime" pour prendre en compte la valeur de décalage (+/-) de la chaîne de date.
- Suppression de la mise en mémoire tampon inutile, à l'origine des exceptions "OutOfMemory" pour les fichiers image volumineux.
- Définition des paramètres régionaux par défaut sur US.
- Remplacement de l'ajout de ".tmp" par un préfixe lors de la création de fichiers temporaires.
Version 1.3.0-alpha01
19 février 2020
Publication d'androidx.exifinterface:exifinterface:1.3.0-alpha01
. Liste des commits de la version 1.3.0-alpha01
Modifications apportées à l'API
- Ajout d'une nouvelle méthode :
ExifInterface.getGpsDateTime()
Version 1.2.0
Version 1.2.0
1er avril 2020
Publication d'androidx.exifinterface:exifinterface:1.2.0
. Liste des commits de la version 1.2.0
Principales modifications depuis la version 1.1.0
- Ajout de la prise en charge de l'ajout de l'affichage EXIF aux fichiers PNG.
- Ajout de la prise en charge des fichiers WebP et de la transmission des données d'affichage EXIF uniquement.
- Ajout d'une API permettant de vérifier si le type MIME spécifié est compatible.
- Ajout de balises supplémentaires pour le délai de décalage :
TAG_OFFSET_TIME
,TAF_OFFSET_TIME_DIGITIZED
etTAG_OFFSET_TIME_ORIGINAL
.
Version 1.2.0-rc01
19 février 2020
Publication d'androidx.exifinterface:exifinterface:1.2.0-rc01
. Liste des commits de la version 1.2.0-rc01
Correction de bugs
- Correction d'un problème provoquant l'enregistrement incorrect des fichiers JPEG lorsqu'ils contenaient des données XMP.
Version 1.2.0-beta01
18 décembre 2019
Publication d'androidx.exifinterface:exifinterface:1.2.0-beta01
. Liste des commits de la version 1.2.0-beta01
Nouvelles fonctionnalités
- Ajout de la prise en charge de l'ajout de l'affichage EXIF aux fichiers PNG.
- Ajout de la prise en charge de la lecture et de l'écriture de l'affichage EXIF à partir de fichiers WebP.
- Ajout de la prise en charge de la transmission des données d'affichage EXIF uniquement.
Modifications apportées à l'API
- Ajout d'une API permettant de vérifier si le type MIME spécifié est compatible.
- Exposition des balises "OffsetTime*" de lecture et d'écriture.
Correction de bugs
- Correction d'un problème qui renvoyait les décalages incorrects pour
getAttributeRange()
.
Version 1.1.0
Version 1.1.0
20 novembre 2019
Publication d'androidx.exifinterface:exifinterface:1.1.0
. Liste des commits de la version 1.1.0.
Changements importants depuis la version 1.0.0
- Prise en charge du format HEIF et d'autres balises XMP.
- Ajout de la prise en charge de la construction d'un objet
ExifInterface
à partir d'unFile
ou d'unFileDescriptor
. - Ajout de méthodes supplémentaires pour obtenir les attributs
hasAttribute
,getAttributeBytes
etgetAttributesRange
.
Version 1.1.0-rc01
9 octobre 2019
Publication d'androidx.exifinterface:exifinterface:1.1.0-rc01
. Liste des commits de la version 1.1.0-rc01
Correction de bugs
- Ajout d'un nom de format (IFD) manquant pour éviter une
ArrayIndexOutOfBoundsException
surloadAttributes
. - Prévention de la suppression du fichier d'origine lorsqu'une exception se produit lors de l'appel de
saveAttributes
. - Correction d'un problème d'exception survenant lors d'un appel de
saveAttributes()
après l'écrasement d'un fichier.
Version 1.1.0-beta01
2 juillet 2019
Publication d'androidx.exifinterface:exifinterface:1.1.0-beta01
. Les commits inclus dans cette version sont disponibles sur cette page.
Nouvelles fonctionnalités
NullPointerException
est renvoyé lorsquenull
est défini pour les arguments@NonNull
.- Prise en charge des balises XMP.
Modifications apportées à l'API
- Ajout de méthodes supplémentaires pour obtenir des informations sur les attributs :
hasAttribute
,getAttributeBytes
etgetAttributesRange
.
Correction de bugs
- Prévention de la fuite de mémoire du descripteur de fichier.
Version 1.1.0-alpha01
13 mars 2019
Publication d'androidx.exifinterface:exifinterface:1.1.0-alpha01
. La liste complète des commits inclus dans cette version est disponible sur cette page.
Nouvelles fonctionnalités
- Prise en charge du format HEIF.
Modifications apportées à l'API
- Ajout de constructeurs supplémentaires d'ExifInterface.
- Correction d'une faute de frappe :
TAG_CAMARA_OWNER_NAME
->TAG_CAMERA_OWNER_NAME
.
Correction de bugs
- Correction de la vérification d'un éventuel dépassement de l'image de la miniature. (aosp/748608)