Exifinterface

อ่านและเขียนแท็ก EXIF ของไฟล์ภาพ
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า เวอร์ชันอัลฟ่า
13 พฤศจิกายน 2024 1.3.7 - - 1.4.0-alpha01

การประกาศทรัพยากร Dependency

หากต้องการเพิ่มทรัพยากร Dependency ของ Exifinterface คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมในที่เก็บ Maven ของ Google

เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับแอปหรือโมดูล

ดึงดูด

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

Kotlin

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 จะส่งผลให้ไม่มีการดำเนินการ (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 nullness ซึ่งเป็นการใช้ประเภท นักพัฒนาซอฟต์แวร์ 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() เมื่อพยายามเขียนกลุ่ม APP1 ของ JPEG ที่มีขนาดใหญ่เกินไป (ก่อนหน้านี้เราจะเขียนกลุ่ม 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 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไข 2 กรณีที่ 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 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • แก้ไขการแยกวิเคราะห์แท็กที่เกี่ยวข้องกับส่วนย่อย (aosp/1508143)
  • ป้องกัน RuntimeException เมื่อเรียกใช้ setDataSource (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 มีคอมมิตเหล่านี้

การแก้ไขข้อบกพร่อง

  • อนุญาต SRATIONAL สําหรับ GPS_LATITUDE และ GPS_LONGITUDE
  • เพิ่มการรองรับการอ่าน/เขียนรูปแบบรอง (2020-01-01 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

  • ขยายการรองรับการเขียน EXIF ของ WebP ให้รวมไฟล์ที่มีเฉพาะข้อมูล 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-beta01

19 สิงหาคม 2020

androidx.exifinterface:exifinterface:1.3.0-beta01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-beta01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ขยายการรองรับการเขียน EXIF ของ WebP ให้รวมไฟล์ที่มีเฉพาะข้อมูล VP8 หรือ VP8L

การเปลี่ยนแปลง API

  • นำ INVALID_DATE_TIME ออกแล้ว แต่ให้ใช้ NULL เพื่อแสดงผลค่าวันที่และเวลาที่ไม่ถูกต้องแทน

การแก้ไขข้อบกพร่อง

  • ทําให้ getGpsDateTime แสดงผลเป็น Long.MIN_VALUE แทน -1 เนื่องจาก -1 เป็นค่าที่ถูกต้อง
  • ทำให้ตัวรับค่าที่เกี่ยวข้องกับ DateTime พิจารณาค่าออฟเซ็ต (+/-) ของสตริงวันที่
  • นำบัฟเฟอร์ที่ไม่จำเป็นออก ซึ่งทำให้เกิดข้อยกเว้น OutOfMemory สำหรับไฟล์รูปภาพขนาดใหญ่
  • ตั้งค่าภาษาเริ่มต้นเป็นสหรัฐอเมริกา
  • แทนที่การเพิ่ม ".tmp" สำหรับการสร้างไฟล์ชั่วคราวด้วยการเพิ่มคำนำหน้า

เวอร์ชัน 1.3.0-alpha01

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-beta01

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-beta01

2 กรกฎาคม 2019

androidx.exifinterface:exifinterface:1.1.0-beta01 ได้รับการปล่อยแล้ว ดูคอมมิตที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

ฟีเจอร์ใหม่

  • แสดงข้อยกเว้น NullPointerException เมื่อตั้งค่า null สำหรับอาร์กิวเมนต์ @NonNull
  • การรองรับแท็ก XMP

การเปลี่ยนแปลง API

  • เพิ่มวิธีการอื่นๆ ในการรับข้อมูลแอตทริบิวต์
  • hasAttribute, getAttributeBytes และ getAttributesRange

แก้ไขข้อบกพร่อง

  • ป้องกันไม่ให้หน่วยความจําของ File Descriptor รั่วไหล

เวอร์ชัน 1.1.0-alpha01

13 มีนาคม 2019

androidx.exifinterface:exifinterface:1.1.0-alpha01 ได้รับการปล่อยแล้ว ดูรายการคอมมิตทั้งหมดที่รวมอยู่ในเวอร์ชันนี้ได้ที่นี่

ฟีเจอร์ใหม่

  • รองรับรูปแบบ HEIF

การเปลี่ยนแปลง API

  • เพิ่มตัวสร้างของ ExifInterface
  • แก้ไขการพิมพ์ผิด: TAG_CAMARA_OWNER_NAME -> TAG_CAMERA_OWNER_NAME

แก้ไขข้อบกพร่อง

  • แก้ไขการตรวจสอบการล้นสำหรับภาพขนาดย่อที่อาจเกิดขึ้น (aosp/748608)