Exifinterface

读取和写入图片文件 EXIF 标记。
最近更新时间 稳定版 候选版 Beta 版 Alpha 版
2023 年 12 月 13 日 1.3.7 - - -

声明依赖项

如需添加 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")
}

如需详细了解依赖项,请参阅添加 build 依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

版本 1.3.7

版本 1.3.7

2023 年 12 月 13 日

发布了 androidx.exifinterface:exifinterface:1.3.7版本 1.3.7 中包含这些提交内容

bug 修复

  • 尝试写入过大的 JPEG APP1 片段时,会抛出 ExifInterface.saveAttributes() 异常(以前,我们会写入一个带有错误、截断长度的无效 APP1 片段:(b/263747161))。在遇到无效的 IFD 偏移后继续解析(之前解析会立即停止,这可能会导致返回错误的值: (b/264729367))。

版本 1.3.6

版本 1.3.6

2023 年 2 月 8 日

发布了 androidx.exifinterface:exifinterface:1.3.6版本 1.3.6 中包含这些提交内容

bug 修复

  • 修复了从 WebP VP8L 区块读取 Alpha 位的问题 (b/255405635)。

版本 1.3.5

版本 1.3.5

2022 年 10 月 24 日

发布了 androidx.exifinterface:exifinterface:1.3.5版本 1.3.5 中包含这些提交内容

bug 修复

  • 修复了 saveAttributes() 产生无效 WebP 文件的两种情况。

版本 1.3.4

版本 1.3.4

2022 年 10 月 5 日

发布了 androidx.exifinterface:exifinterface:1.3.4版本 1.3.4 中包含这些提交内容

bug 修复

  • 不再支持将属性保存到 DNG 文件中。1.3.3 版中添加的支持不完整,会生成损坏的文件。

版本 1.3.3

版本 1.3.3

2021 年 8 月 4 日

发布了 androidx.exifinterface:exifinterface:1.3.3版本 1.3.3 中包含这些提交内容

bug 修复

  • 修复了解析与 secsec 相关的标记时出现的问题。(aosp/1508143)
  • 在调用 setDataSource 时,防止发生 RuntimeException。(c8e66e9)
  • 防止 skipBytes 无限循环。(fdbe88b)
  • 从 MediaMetadataRetriever 捕获 RuntimeException。(389b21a)
  • 添加了对保存 DNG 文件属性的支持 (3017dbc)
  • 将非缩略图标签替换为缩略图标签。(e1b916d)

版本 1.3.2

版本 1.3.2

2020 年 12 月 2 日

发布了 androidx.exifinterface:exifinterface:1.3.2版本 1.3.2 中包含这些提交内容

bug 修复

  • 允许 GPS_LATITUDEGPS_LONGITUDE 使用 SRATIONAL
  • 增加了针对 DateTime 标记的辅助格式 (2020-01-01 00:00:00) 的读取/写入支持。
  • 阻止了在调用 saveAttribute() 时临时移除原始文件。

版本 1.3.1

版本 1.3.1

2020 年 10 月 14 日

发布了 androidx.exifinterface:exifinterface:1.3.1版本 1.3.1 中包含这些提交内容

bug 修复

  • 修复了 saveAttributes 实现以将图像数据保留在 MediaProvider 中

版本 1.3.0

版本 1.3.0

2020 年 9 月 16 日

发布了 androidx.exifinterface:exifinterface:1.3.0版本 1.3.0 中包含这些提交内容。

自 1.2.0 以来的重要变更

  • 扩展了 WebP EXIF 写入支持,以支持仅包含 VP8 或 VP8L 分块的文件。
  • 移除了导致大型图片文件出现 OutOfMemory 异常的不必要缓冲。
  • 移除了 INVALID_DATE_TIME。改为使用 NULL 返回无效的 DateTime 值。
  • 对于无效值,让 getGpsDateTime 返回 Long.MIN_VALUE 而不是 -1

版本 1.3.0-rc01

2020 年 9 月 2 日

发布了 androidx.exifinterface:exifinterface:1.3.0-rc01,该版本与 1.3.0-beta01 相比没有变化。版本 1.3.0-rc01 中包含这些提交内容

版本 1.3.0-beta01

2020 年 8 月 19 日

发布了 androidx.exifinterface:exifinterface:1.3.0-beta01版本 1.3.0-beta01 中包含这些提交内容

新功能

  • 扩展了 WebP EXIF 写入支持,以支持仅包含 VP8 或 VP8L 分块的文件。

API 变更

  • 移除了 INVALID_DATE_TIME。改为使用 NULL 返回无效的 DateTime 值。

bug 修复

  • getGpsDateTime 返回 Long.MIN_VALUE 而不是 -1,因为 -1 是有效值
  • 让与 DateTime 相关的 getter 考虑日期字符串的偏移值 (+/-)。
  • 移除了导致大型图片文件出现 OutOfMemory 异常的不必要缓冲。
  • 将默认语言区域设置为美国
  • 以添加前缀取代添加“.tmp”作为创建临时文件的方式。

版本 1.3.0-alpha01

2020 年 2 月 19 日

发布了 androidx.exifinterface:exifinterface:1.3.0-alpha01版本 1.3.0-alpha01 中包含这些提交内容

API 变更

  • 添加了新方法:ExifInterface.getGpsDateTime()

版本 1.2.0

版本 1.2.0

2020 年 4 月 1 日

发布了 androidx.exifinterface:exifinterface:1.2.0版本 1.2.0 中包含这些提交内容

自 1.1.0 以来的重要变更

  • 支持向 PNG 文件中添加 EXIF
  • 支持 WebP 文件和仅包含 EXIF 数据的流
  • 添加了一个 API,用于检查是否支持指定的 MIME 类型
  • 为偏移时间添加了更多标记:TAG_OFFSET_TIMETAF_OFFSET_TIME_DIGITIZEDTAG_OFFSET_TIME_ORIGINAL

版本 1.2.0-rc01

2020 年 2 月 19 日

发布了 androidx.exifinterface:exifinterface:1.2.0-rc01版本 1.2.0-rc01 中包含这些提交内容

bug 修复

  • 修复了在 JPEG 有 XMP 数据的情况下,JPEG 无法正确保存的问题

版本 1.2.0-beta01

2019 年 12 月 18 日

发布了 androidx.exifinterface:exifinterface:1.2.0-beta01版本 1.2.0-beta01 中包含这些提交内容

新功能

  • 支持向 PNG 文件中添加 EXIF
  • 支持从 WebP 文件中读取和写入 EXIF
  • 支持仅包含 EXIF 数据的流

API 变更

  • 添加了一个 API,用于检查是否支持指定的 MIME 类型
  • 公开了读取和写入 OffsetTime* 标记

bug 修复

  • 修复了 getAttributeRange() 返回的偏移量不正确的问题

版本 1.1.0

版本 1.1.0

2019 年 11 月 20 日

发布了 androidx.exifinterface:exifinterface:1.1.0版本 1.1.0 中包含这些提交内容

自 1.0.0 以来的重要变更

  • 支持 HEIF 格式和更多的 XMP 标记
  • 新增对于从 FileFileDescriptor 构建 ExifInterface 对象的支持
  • 添加了更多获取属性的方法:hasAttributegetAttributeBytesgetAttributesRange

版本 1.1.0-rc01

2019 年 10 月 9 日

发布了 androidx.exifinterface:exifinterface:1.1.0-rc01版本 1.1.0-rc01 中包含这些提交内容

bug 修复

  • 添加了缺少的格式名称 (IFD),防止 loadAttributes 出现 ArrayIndexOutOfBoundsException
  • 如果调用 saveAttributes 时发生异常,禁止删除原始文件
  • 修复了覆盖文件后调用 saveAttributes() 时出现的异常问题。

版本 1.1.0-beta01

2019 年 7 月 2 日

发布了 androidx.exifinterface:exifinterface:1.1.0-beta01。点击此处可查看此版本中包含的提交内容。

新功能

  • @NonNull 参数设置为 null 时抛出 NullPointerException
  • 支持 XMP 标记

API 变更

  • 添加了更多获取属性信息的方法
  • hasAttributegetAttributeBytesgetAttributesRange

bug 修复

  • 防止文件描述符内存泄漏

版本 1.1.0-alpha01

2019 年 3 月 13 日

发布了 androidx.exifinterface:exifinterface:1.1.0-alpha01。点击此处可查看此版本中包含的完整提交内容列表。

新功能

  • 支持 HEIF 格式

API 变更

  • 添加了更多 ExifInterface 构造函数
  • 修复了拼写错误:TAG_CAMARA_OWNER_NAME -> TAG_CAMERA_OWNER_NAME

bug 修复

  • 修复了对潜在的缩略图溢出问题的检查 (aosp/748608)