Exifinterface
Letzte Aktualisierung | Stabile Version | Release Candidate | Beta-Ausgabe | Alphaversion |
---|---|---|---|---|
13. November 2024 | 1.3.7 | - | - | 1.4.0-alpha01 |
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von Exifinterface hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre App oder Ihr Modul die Abhängigkeiten für die erforderlichen Artefakte hinzu:
Cool
dependencies { implementation "androidx.exifinterface:exifinterface:1.3.7" }
Kotlin
dependencies { implementation("androidx.exifinterface:exifinterface:1.3.7") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Version 1.4
Version 1.4.0-alpha01
13. November 2024
androidx.exifinterface:exifinterface:1.4.0-alpha01
wird veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
Neue Funktionen
- Unterstützung für das Lesen von XMP-Daten aus HEIF-Bildern hinzugefügt.
- Unterstützung für das Lesen von Exif- und XMP-Daten aus AVIF-Bildern
API-Änderungen
- Angeben, dass der
location
-Parameter fürsetGpsInfo
@Nullable
ist und dass das Übergeben vonnull
zu einer Null-Operation führt. (If924c, b/236484611)
Fehlerkorrekturen
- Parsing fortsetzen, nachdem ein ungültiger IFD-Offset gefunden wurde (b/264729367).
- Umgang mit WebP-Bildern, die fälschlicherweise eine JPEG APP1-Markierung vor ihren Exif-Daten enthalten (b/281638358).
- Achten Sie darauf, dass XMP-Änderungen in JPEGs mit einem separaten XMP-Segment von
saveAttributes()
in demselben separaten XMP-Segment gespeichert werden, anstatt in TIFF/Exif-Tag 700 geschrieben zu werden, das nicht von der XMP-Spezifikation unterstützt wird und in dem viele Tools sie nicht finden. - Vermeiden Sie beim Speichern das Duplizieren von XMP-Daten aus einem separaten Segment in das TIFF-Vorschauverzeichnis (b/309843390).
- Die Genauigkeit von Konvertierungen von Dezimalzahlen in rationale Zahlen wurde verbessert. (b/312680558).
- Akzeptieren des rationalen Formats (x/y) für
setAttribute
für „alte“ rationale Tags, die automatisch in Dezimalzahlen umgewandelt werden, wenn sie vongetAttribute
zurückgegeben werden (b/312680558). - XMP-Daten, die einem JPEG-Bild hinzugefügt werden, das noch keine XMP-Daten enthält, müssen gemäß der XMP-Spezifikation in ein separates Segment geschrieben werden.
ExifInterface
bevorzugt XMP-Daten im Exif 700-Tag in JPEG-Bildern (was gegen die Spezifikation verstößt). Dieses Verhalten wird beim Lesen und Schreiben von Bildern mit vorhandenen XMP-Daten beibehalten. - Behebung eines Fehlers, durch den beim Schreiben von WebP-Bildern mit einer Höhe oder Breite von mehr als 8.191 Pixeln eine beschädigte Ausgabe erstellt wurde (b/342697059).
- Diese Bibliothek verwendet jetzt JSpecify-Null-Anmerkungen, die sich auf den Typ beziehen. Kotlin-Entwickler sollten die folgenden Compilerargumente verwenden, um die korrekte Verwendung zu erzwingen:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I5cd0f, b/326456246) - Die manuelle Kennzeichnung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies bei Verwendung von R8 mit AGP 7.3 oder höher (z.B. R8 Version 3.3) und für alle Builds bei Verwendung von AGP 8.1 oder höher (z.B. D8 Version 8.1) automatisch über die API-Modellierung erfolgt. Kunden, die AGP nicht verwenden, wird empfohlen, auf D8 Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (If6b4c, b/345472586)
Version 1.3.7
Version 1.3.7
13. Dezember 2023
androidx.exifinterface:exifinterface:1.3.7
wird veröffentlicht. Version 1.3.7 enthält diese Commits.
Fehlerkorrekturen
- Es wird eine Ausnahme von
ExifInterface.saveAttributes()
geworfen, wenn versucht wird, ein zu großes JPEG-APP1-Segment zu schreiben. Bisher wurde ein ungültiges APP1-Segment mit einer falschen, abgeschnittenen Länge geschrieben:(b/263747161). Das Parsen wird fortgesetzt, nachdem ein ungültiger IFD-Offset gefunden wurde. Bisher wurde das Parsen sofort beendet, was zu falschen zurückgegebenen Werten führen konnte: (b/264729367).
Version 1.3.6
Version 1.3.6
8. Februar 2023
androidx.exifinterface:exifinterface:1.3.6
wird veröffentlicht. Version 1.3.6 enthält diese Commits.
Fehlerkorrekturen
- Korrektur beim Lesen des Alphabits aus WebP VP8L-Chunks (b/255405635).
Version 1.3.5
Version 1.3.5
24. Oktober 2022
androidx.exifinterface:exifinterface:1.3.5
wird veröffentlicht. Version 1.3.5 enthält diese Commits.
Fehlerkorrekturen
- Behebung von zwei Fällen, in denen
saveAttributes()
ungültige WebP-Dateien generierte.
Version 1.3.4
Version 1.3.4
5. Oktober 2022
androidx.exifinterface:exifinterface:1.3.4
wird veröffentlicht. Version 1.3.4 enthält diese Commits.
Fehlerkorrekturen
- Die Unterstützung für das Speichern von Attributen in DNG-Dateien wurde entfernt. Die in 1.3.3 hinzugefügte Unterstützung war unvollständig und führte zu beschädigten Dateien.
Version 1.3.3
Version 1.3.3
4. August 2021
androidx.exifinterface:exifinterface:1.3.3
wird veröffentlicht. Version 1.3.3 enthält diese Commits.
Fehlerkorrekturen
- Fehler beim Parsen von Unterabschnitts-Tags behoben. (aosp/1508143)
- RuntimeException beim Aufrufen von setDataSource verhindern (c8e66e9)
- Verhindern, dass „skipBytes“ in einer Endlosschleife läuft. (fdbe88b)
- RuntimeException von MediaMetadataRetriever abfangen (389b21a)
- Unterstützung für das Speichern von Attributen für DNG-Dateien hinzugefügt (3017dbc)
- Ersetzen Sie Tags, die keine Miniaturansicht enthalten, durch Miniaturansicht-Tags. (e1b916d)
Version 1.3.2
Version 1.3.2
2. Dezember 2020
androidx.exifinterface:exifinterface:1.3.2
wird veröffentlicht. Version 1.3.2 enthält diese Commits.
Fehlerkorrekturen
- Ermöglicht
SRATIONAL
fürGPS_LATITUDE
undGPS_LONGITUDE
. - Es wird jetzt ein sekundäres Format (2020-01-01 00:00:00) des DateTime-Tags unterstützt.
- Das vorübergehende Entfernen der Originaldatei beim Aufrufen von saveAttribute() wurde verhindert.
Version 1.3.1
Version 1.3.1
14. Oktober 2020
androidx.exifinterface:exifinterface:1.3.1
wird veröffentlicht. Version 1.3.1 enthält diese Commits.
Fehlerkorrekturen
- Fehlerbehebung bei der Implementierung von saveAttributes, damit die Bilddaten im MediaProvider gespeichert bleiben
Version 1.3.0
Version 1.3.0
16. September 2020
androidx.exifinterface:exifinterface:1.3.0
wird veröffentlicht. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Erweiterte Unterstützung für das Schreiben von WebP-EXIF-Dateien, einschließlich Dateien, die nur VP8- oder VP8L-Chunks enthalten.
- Unnötiges Puffern wurde entfernt, das bei großen Bilddateien zu OutOfMemory-Ausnahmen führte.
INVALID_DATE_TIME
wurde entfernt. Verwenden Sie stattdessenNULL
, um ungültige Datums-/Zeitwerte zurückzugeben.- Bei ungültigen Werten gibt
getGpsDateTime
jetztLong.MIN_VALUE
statt-1
zurück.
Version 1.3.0-rc01
2. September 2020
androidx.exifinterface:exifinterface:1.3.0-rc01
wird seit 1.3.0-beta01
unverändert veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
Version 1.3.0-beta01
19. August 2020
androidx.exifinterface:exifinterface:1.3.0-beta01
wird veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
Neue Funktionen
- Erweiterte Unterstützung für das Schreiben von WebP-EXIF-Dateien, einschließlich Dateien, die nur VP8- oder VP8L-Chunks enthalten.
API-Änderungen
INVALID_DATE_TIME
wurde entfernt. Verwenden Sie stattdessenNULL
, um einen ungültigen Zeitstempel zurückzugeben.
Fehlerkorrekturen
- Bei
getGpsDateTime
wird jetztLong.MIN_VALUE
anstelle von-1
zurückgegeben, da-1
ein gültiger Wert ist. - Bei DateTime-bezogenen Gettern wird jetzt der Offsetwert (+/-) des Datumsstrings berücksichtigt.
- Unnötiges Puffern wurde entfernt, das bei großen Bilddateien zu OutOfMemory-Ausnahmen führte.
- „USA“ als Standard-Standort festlegen
- Das Hinzufügen von „.tmp“ zum Erstellen von temporären Dateien wurde durch das Hinzufügen eines Präfixes ersetzt.
Version 1.3.0-alpha01
19. Februar 2020
androidx.exifinterface:exifinterface:1.3.0-alpha01
wird veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
API-Änderungen
- Neue Methode hinzugefügt:
ExifInterface.getGpsDateTime()
Version 1.2.0
Version 1.2.0
1. April 2020
androidx.exifinterface:exifinterface:1.2.0
wird veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
- Unterstützung für das Hinzufügen von EXIF-Daten zu PNG-Dateien
- Unterstützung für WebP-Dateien und Streams mit reinen EXIF-Daten hinzugefügt
- Es wurde eine API hinzugefügt, um zu prüfen, ob der angegebene MIME-Typ unterstützt wird.
- Es wurden weitere Tags für die Zeitverschiebung hinzugefügt:
TAG_OFFSET_TIME
,TAF_OFFSET_TIME_DIGITIZED
undTAG_OFFSET_TIME_ORIGINAL
.
Version 1.2.0-rc01
19. Februar 2020
androidx.exifinterface:exifinterface:1.2.0-rc01
wird veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem JPEG-Dateien nicht korrekt gespeichert wurden, wenn sie XMP-Daten enthielten.
Version 1.2.0-beta01
18. Dezember 2019
androidx.exifinterface:exifinterface:1.2.0-beta01
wird veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
Neue Funktionen
- Unterstützung für das Hinzufügen von EXIF-Daten zu PNG-Dateien
- Unterstützung für das Lesen und Schreiben von EXIF-Daten aus WebP-Dateien hinzugefügt
- Unterstützung für einen Stream mit reinen EXIF-Daten hinzugefügt
API-Änderungen
- Es wurde eine API hinzugefügt, um zu prüfen, ob der angegebene MIME-Typ unterstützt wird.
- Die Lese- und Schreib-OffsetTime*-Tags wurden freigegeben.
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem für
getAttributeRange()
falsche Abweichungen zurückgegeben wurden.
Version 1.1.0
Version 1.1.0
20. November 2019
androidx.exifinterface:exifinterface:1.1.0
wird veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Unterstützung für das HEIF-Format und weitere XMP-Tags
- Unterstützung für das Erstellen eines
ExifInterface
-Objekts aus einemFile
- oderFileDescriptor
-Objekt hinzugefügt - Es wurden weitere Methoden zum Abrufen von Attributen hinzugefügt:
hasAttribute
,getAttributeBytes
undgetAttributesRange
.
Version 1.1.0-rc01
9. Oktober 2019
androidx.exifinterface:exifinterface:1.1.0-rc01
wird veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Ein fehlender Formatname (IFD) wurde hinzugefügt, um
ArrayIndexOutOfBoundsException
aufloadAttributes
zu verhindern. - Das Löschen der Quelldatei wird verhindert, wenn beim Aufruf von
saveAttributes
eine Ausnahme auftritt. - Ein Ausnahmeproblem wurde behoben, das auftrat, wenn nach dem Überschreiben einer Datei
saveAttributes()
aufgerufen wurde.
Version 1.1.0-beta01
2. Juli 2019
androidx.exifinterface:exifinterface:1.1.0-beta01
wird veröffentlicht. Die in dieser Version enthaltenen Commits finden Sie hier.
Neue Funktionen
- Lässt
NullPointerException
werfen, wennnull
für@NonNull
-Argumente festgelegt ist - Unterstützung für XMP-Tags
API-Änderungen
- Es wurden weitere Methoden zum Abrufen von Attributinformationen hinzugefügt.
hasAttribute
,getAttributeBytes
undgetAttributesRange
Fehlerkorrekturen
- Speicherlecks bei Dateideskriptoren verhindern
Version 1.1.0-alpha01
13. März 2019
androidx.exifinterface:exifinterface:1.1.0-alpha01
wird veröffentlicht. Eine vollständige Liste der Commits in dieser Version finden Sie hier.
Neue Funktionen
- HEIF-Format unterstützen
API-Änderungen
- Es wurden weitere Konstruktoren für ExifInterface hinzugefügt.
- Fehler korrigiert:
TAG_CAMARA_OWNER_NAME
->TAG_CAMERA_OWNER_NAME
Fehlerkorrekturen
- Die Prüfung auf möglichen Überlauf für die Miniaturansicht wurde korrigiert (aosp/748608)