Interfejs Exif

Odczytywanie i zapisywanie tagów EXIF plików obrazów.
Najnowsza aktualizacja Wersja stabilna Kandydat do publikacji Wersja Beta Wersja alfa
13 grudnia 2023 r. 1.3.7 - - -

Deklarowanie zależności

Aby dodać zależność od Exifinterface, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Google Maven.

W pliku build.gradle aplikacji lub modułu dodaj zależności artefaktów, których potrzebujesz:

Odlotowe

dependencies {
    implementation "androidx.exifinterface:exifinterface:1.3.7"
}

Kotlin

dependencies {
    implementation("androidx.exifinterface:exifinterface:1.3.7")
}

Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.

Opinia

Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli znajdziesz nowe wydania lub masz pomysły na ulepszenie tej biblioteki. Zanim utworzysz nową bibliotekę, przejrzyj problemy z tą biblioteką. Możesz oddać głos w ramach istniejącego problemu, klikając przycisk gwiazdki.

Utwórz nowy numer

Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.

Wersja 1.3.7

Wersja 1.3.7

13 grudnia 2023 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.7 została zwolniona. Wersja 1.3.7 zawiera te zatwierdzenia.

Poprawki błędów

  • Gdy próbujesz zapisać zbyt duży segment aplikacji JPEG APP1, dodaj wyjątek od ExifInterface.saveAttributes() (wcześniej wysyłaliśmy nieprawidłowy segment APP1 z nieprawidłową, obciętą długością:(b/263747161)). Kontynuuj analizę po napotkaniu nieprawidłowego przesunięcia IFD (wcześniejsza analiza zostałaby zatrzymana natychmiast, co mogło spowodować zwrócenie nieprawidłowych wartości: (b/264729367)).

Wersja 1.3.6

Wersja 1.3.6

8 lutego 2023 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.6 została zwolniona. Wersja 1.3.6 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawa odczytu bitu alfa z fragmentów WebP VP8L (b/255405635).

Wersja 1.3.5

Wersja 1.3.5

24 października 2022 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.5 została zwolniona. Wersja 1.3.5 zawiera te zatwierdzenia.

Poprawki błędów

  • Napraw 2 przypadki, w których saveAttributes() generowało nieprawidłowe pliki WebP.

Wersja 1.3.4

Wersja 1.3.4

5 października 2022 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.4 została zwolniona. Wersja 1.3.4 zawiera te zatwierdzenia.

Poprawki błędów

  • Usunięto obsługę zapisywania atrybutów w plikach DNG. Obsługa dodana w wersji 1.3.3 była niekompletna i generowały uszkodzone pliki.

Wersja 1.3.3

Wersja 1.3.3

4 sierpnia 2021 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.3 została zwolniona. Wersja 1.3.3 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiono analizę tagów związanych z podsekcją. (Aosp/1508143)
  • Zapobiegaj wyjątkowi środowiska wykonawczego podczas wywoływania funkcji setDataSource. (C8E66E9)
  • Zapobiegaj nieskończonemu zapętlaniu elementów watchBytes. (Fdbe88b)
  • Przechwytywanie wyjątku RuntimeException z MediaMetadataRetriever. (389b21a)
  • Dodano obsługę zapisywania atrybutów w plikach DNG (3017dbc).
  • Tagi, które nie są miniaturami, zastąp tagami miniatur. (E1b916d)

Wersja 1.3.2

Wersja 1.3.2

Grudzień 2, 2020

Aplikacja androidx.exifinterface:exifinterface:1.3.2 została zwolniona. Wersja 1.3.2 zawiera te zatwierdzenia.

Poprawki błędów

  • Dopuszcza SRATIONAL dla GPS_LATITUDE i GPS_LONGITUDE.
  • Dodaliśmy obsługę odczytu i zapisu w formacie dodatkowym (2020-01-01 00:00:00) tagu DateTime.
  • Zapobiegono tymczasowemu usuwaniu pliku źródła podczas wywoływania parametru saveAttribute().

Wersja 1.3.1

Wersja 1.3.1

14 października 2020 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.1 została zwolniona. Wersja 1.3.1 zawiera te zatwierdzenia.

Poprawki błędów

  • Popraw implementację parametru saveAttributes, aby dane obrazu zostały zachowane w MediaProvider.

Wersja 1.3.0

Wersja 1.3.0

16 września 2020 roku

Aplikacja androidx.exifinterface:exifinterface:1.3.0 została zwolniona. Wersja 1.3.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.2.0

  • Rozszerzona obsługa zapisu WebP EXIF w celu uwzględniania plików zawierających tylko fragmenty w formacie VP8 lub VP8L.
  • Usunęliśmy zbędne buforowanie, które powodowało wyjątki OutOfMemory w przypadku dużych plików graficznych.
  • Czcionka INVALID_DATE_TIME została usunięta. Zamiast niego do zwrócenia nieprawidłowych wartości daty i godziny używaj funkcji NULL.
  • Funkcja getGpsDateTime zwróciła Long.MIN_VALUE zamiast -1 dla nieprawidłowej wartości.

Wersja 1.3.0-rc01

2 września 2020 r.

Wersja androidx.exifinterface:exifinterface:1.3.0-rc01 została udostępniona bez zmian od 1.3.0-beta01. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.

Wersja 1.3.0-beta01

19 sierpnia 2020 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.0-beta01 została zwolniona. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.

Nowe funkcje

  • Rozszerzona obsługa zapisu WebP EXIF w celu uwzględniania plików zawierających tylko fragmenty w formacie VP8 lub VP8L.

Zmiany w interfejsie API

  • Czcionka INVALID_DATE_TIME została usunięta. Zamiast tego użyj funkcji NULL, aby zwrócić nieprawidłową wartość daty i godziny.

Poprawki błędów

  • Produkt getGpsDateTime zwrócił Long.MIN_VALUE zamiast -1, ponieważ -1 jest prawidłową wartością
  • Metody pobierające związane z datą i godziną wykonały uwzględnianie wartości przesunięcia (+/-) ciągu daty.
  • Usunęliśmy zbędne buforowanie, które powodowało wyjątki OutOfMemory w przypadku dużych plików graficznych.
  • Ustaw jako domyślny język amerykański
  • Zastąpiono dodawanie ciągu „.tmp” do tworzenia plików tymczasowych w celu dodania prefiksu.

Wersja 1.3.0-alfa01

19 lutego 2020 r.

Aplikacja androidx.exifinterface:exifinterface:1.3.0-alpha01 została zwolniona. Wersja 1.3.0-alpha01 zawiera te zatwierdzenia.

Zmiany w interfejsie API

  • Dodano nową metodę: ExifInterface.getGpsDateTime()

Wersja 1.2.0

Wersja 1.2.0

1 kwietnia 2020 r.

Aplikacja androidx.exifinterface:exifinterface:1.2.0 została zwolniona. Wersja 1.2.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.1.0

  • Dodaliśmy obsługę dodawania danych EXIF do plików PNG.
  • Dodaliśmy obsługę plików WebP i strumienia danych EXIF z samymi danymi.
  • Dodano interfejs API umożliwiający sprawdzanie, czy określony typ MIME jest obsługiwany.
  • Dodano więcej tagów czasu przesunięcia: TAG_OFFSET_TIME, TAF_OFFSET_TIME_DIGITIZED i TAG_OFFSET_TIME_ORIGINAL

Wersja 1.2.0-rc01

19 lutego 2020 r.

Aplikacja androidx.exifinterface:exifinterface:1.2.0-rc01 została zwolniona. Wersja 1.2.0-rc01 zawiera te zatwierdzenia.

Poprawki błędów

  • Naprawiono błąd polegający na tym, że pliki JPEG były zapisywane nieprawidłowo, jeśli plik JPEG zawierał dane XMP.

Wersja 1.2.0-beta01

18 grudnia 2019 r.

Aplikacja androidx.exifinterface:exifinterface:1.2.0-beta01 została zwolniona. Wersja 1.2.0-beta01 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodaliśmy obsługę dodawania danych EXIF do plików PNG.
  • Dodaliśmy obsługę odczytywania i zapisywania danych EXIF z plików WebP
  • Dodaliśmy obsługę strumienia danych EXIF z samymi danymi.

Zmiany w interfejsie API

  • Dodano interfejs API umożliwiający sprawdzanie, czy określony typ MIME jest obsługiwany.
  • Udostępniono tagi OffsetTime* do odczytu i zapisu

Poprawki błędów

  • Naprawiono problem z zwracaniem nieprawidłowych przesunięć dla wartości getAttributeRange()

Wersja 1.1.0

Wersja 1.1.0

20 listopada 2019 r.

Aplikacja androidx.exifinterface:exifinterface:1.1.0 została zwolniona. Wersja 1.1.0 zawiera te zatwierdzenia.

Ważne zmiany od wersji 1.0.0

  • Obsługa formatu HEIF i innych tagów XMP
  • Dodano możliwość tworzenia obiektu ExifInterface z File i FileDescriptor
  • Dodano więcej metod uzyskiwania atrybutu: hasAttribute, getAttributeBytes i getAttributesRange

Wersja 1.1.0-rc01

9 października 2019 r.

Aplikacja androidx.exifinterface:exifinterface:1.1.0-rc01 została zwolniona. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.

Poprawki błędów

  • Dodano brakującą nazwę formatu (IFD), aby zapobiec wyświetlaniu typu ArrayIndexOutOfBoundsException w pliku loadAttributes
  • Zapobiegono usunięciu pliku origin w przypadku wystąpienia wyjątku podczas wywoływania funkcji saveAttributes
  • Rozwiązaliśmy problem z wyjątkiem, który występował, gdy po zastąpieniu pliku wystąpiło wywołanie saveAttributes().

Wersja 1.1.0-beta01

2 lipca 2019 r.

Aplikacja androidx.exifinterface:exifinterface:1.1.0-beta01 została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.

Nowe funkcje

  • Zwraca NullPointerException, gdy ustawiona jest wartość null dla @NonNull argumentów
  • Obsługa tagów XMP

Zmiany w interfejsie API

  • Dodaliśmy więcej metod uzyskiwania informacji o atrybutach
  • hasAttribute, getAttributeBytesgetAttributesRange

Poprawki błędów

  • Zapobiegaj wyciekom pamięci po deskryptorach plików

Wersja 1.1.0-alfa01

13 marca 2019 r.

Aplikacja androidx.exifinterface:exifinterface:1.1.0-alpha01 została zwolniona. Pełną listę zatwierdzeń zawartych w tej wersji znajdziesz tutaj.

Nowe funkcje

  • Obsługa formatu HEIF

Zmiany w interfejsie API

  • Dodano więcej konstruktorów ExifInterface
  • Poprawiona literówka: TAG_CAMARA_OWNER_NAME -> TAG_CAMERA_OWNER_NAME

Poprawki błędów

  • Naprawiono sprawdzanie możliwego przepełnienia obrazu miniatury (aosp/748608).