如何知道 PHAsset 是否已被修改?

2023-11-24

更具体地说,你如何知道一个PHAsset标的资产的当前版本是否与原始版本不同?

我的用户只需在必要时在当前资产或原始资产之间进行选择。然后我需要他们的答案PHImageRequestOptions.version.


从 iOS 16 开始,PHAsset has a hasAdjustments指示资产是否已被编辑的属性。

对于以前的版本,您可以通过以下方式获取给定资产的一组数据资源PHAssetResourceAPI - 如果该资产已被编辑,它将有一个调整数据资源。

let isEdited = PHAssetResource.assetResources(for: asset).contains(where: { $0.type == .adjustmentData })

请注意,如果您想实际使用资源文件,则必须使用PHAssetResourceManagerAPI。另请注意,此方法会立即返回 - 与此处的其他答案不同,无需等待异步网络请求。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何知道 PHAsset 是否已被修改? 的相关文章

随机推荐

  • Replaykit,startCaptureWithHandler() 未在 captureHandler 中发送 Video 类型的 CMSampleBufferRef

    我已经实现了RPScreenRecorder 它记录屏幕和麦克风音频 完成多个录制后 我停止录制并使用以下命令将音频与视频合并AVMutableComposition然后合并所有视频以形成单个视频 对于屏幕录制和获取视频和音频文件 我正在使
  • 是否有理由更喜欢 jQuery.Ajax 而不是 asp.net UpdatePanel?

    如果我正在开发一个 asp Net 应用程序 是否在某些情况下我应该忘记 MS Ajax UpdatePanels 而更喜欢使用 jQuery Ajax 来更新页面的某些部分 谢谢 是的 事实上 你应该几乎总是之前更喜欢使用您自己的 或 j
  • 如何使用 JavaScript 从 window.location (URL) 中删除哈希而不刷新页面?

    我有这样的网址 http example com something 如何删除 something 而不导致页面刷新 我尝试了以下解决方案 window location hash 但是 这不会删除哈希符号 从网址 如今解决这个问题更加触手
  • 如何在Android应用程序中删除数据库

    如何从应用程序中删除数据库 你检查了吗deleteDatabase Android 中可用的方法吗
  • 使用令牌通过服务帐户登录 GKE

    我正在尝试使用服务帐户访问谷歌云上的 Kubernetes 集群 但我无法使其工作 我有一个带有一些 Pod 和入口的正在运行的系统 我希望能够更新部署的映像 我想使用这样的东西 远程 kubectl config set cluster
  • 关于Android权限和签名保护级别

    我是 Android 新手 对 AndroidManifest xml 中的权限保护级别 签名 有疑问 Android 参考文档说明了 签名 保护级别 仅当请求应用程序时系统才授予的权限 使用与声明的应用程序相同的证书进行签名 的许可 如果
  • JAXB 创建上下文和编组器成本

    这个问题有点理论化 创建 JAXB 上下文 编组器和反编组器的成本是多少 我发现我的代码可以受益于为所有编组操作保留相同的 JAXB 上下文和可能相同的编组器 而不是在每个编组上创建上下文和编组器 那么创建 JAXB 上下文和编组器 反编组
  • python matplotlib条形图添加条形标题[重复]

    这个问题在这里已经有答案了 我正在使用 matplotlib 和 python 2 7 我需要创建一个简单的 pyplot 条形图 对于每个条形图 我需要在其顶部添加它的 y 值 我正在使用以下代码创建条形图 import matplotl
  • 使用 Ajax 将表单数据发送到控制器操作

    我在 MVC3 中有一个页面 带有一个链接 Ajax ActionLink 当用户单击它时 它会调用控制器的操作 并将结果插入到 div 中 并进行替换 代码如下所示 Ajax ImageActionLink Images btn shar
  • 使用java从字符串中删除重复的字母

    我需要使用java中的正则表达式操作从字符串中删除重复的字母 例如 王子 gt 王子 苹果 gt 苹果 简单的解决方案 删除重复字符 像这样 final String str APPLEE String replaced str repla
  • 使用 AJAX 上传文件而不使用 FormData (IE9)

    In IE9 FormData不支持 这使得使用上传文件XMLHttpRequest不那么琐碎了 这可以做到吗 我已经看到提到了 iFrame 虽然我不反对编写一些繁琐的代码 但我对如何实现这一目标感到困惑 有很多资源讨论上传到 iFram
  • 使用头文件有哪些优点和缺点? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我对 Java C Scala 等编程语言以及 C C Objective C 等较低级编程语言有一些经验 我的观察是 低级语言尝试将头文件和实现文件分开 而其他高级编程语言从不将其分开
  • 在单元测试方法中显示 Windows 窗体

    我刚刚在 Visual Studio NET 中发现了单元测试项目 并使用测试方法来设置我开发的全局代码的示例 一些全局方法涉及显示可重用的对话框 例如日期选择器和输入框 问题是 有时表格会显示 有时则不会 我认为这与模态有关 因为我有一个
  • Kotlin:“return@”是什么意思?

    我在我的一个项目中使用 RxJava 我使用 Android Studio 插件和地图之一将我的类之一转换为 KotlinflatMaplambda java 中的 Func1 中间体返回如下所示 Func1 我不懂这啥意思 somethi
  • 将两个数据框逐个元素粘贴在一起

    我需要逐个元素粘贴两个数据帧的内容以输入到另一个程序 我有一个平均值数据框和一个平均值标准误差数据框 我尝试使用 R Paste 函数 但它似乎无法处理数据框 使用向量时 似乎将第一个向量的所有元素连接到一个字符串中 并将第二个向量的所有元
  • Javascript 中使用双括号调用函数

    当我调用函数时hi 带双括号的函数显示hi输出 它也会给出错误 说hi不是函数 使用的意义是什么 带函数名 如果出现以下情况 双括号会很有用 hi返回了一个函数而不是它的名称 就像 function hi return hello hi 这
  • 查找包含另一个字符串中一个字符串的所有字符的最小窗口的长度

    最近我接受了采访 我做得不好 因为我被以下问题卡住了 假设给出一个序列 A D C B D A B C D A C D 搜索顺序如下 A C D 任务是找到给定字符串中的开始和结束索引 该索引包含保留顺序的搜索字符串的所有字符 Output
  • 如何重载打印函数来扩展其功能?

    我想知道是否有内置功能print可以被覆盖 以便以下语句将同时写入控制台和文件 print test0 test1 test2 sep n 另外 我想知道是否可以修改内置的源代码print功能 使用装饰器 简化示例 def my decor
  • Android 编辑文本 - 光标停留在起始位置

    我在我的项目中使用编辑文本 问题是 每当我在文本框中输入任何内容时 它都会显示出来 但无论我输入多少个字符 光标都不会从其起始位置移动 此外 我无法通过单击文本框中的任何特定字符来移动 我的包含编辑文本的 xml 文件是这样的
  • 如何知道 PHAsset 是否已被修改?

    更具体地说 你如何知道一个PHAsset标的资产的当前版本是否与原始版本不同 我的用户只需在必要时在当前资产或原始资产之间进行选择 然后我需要他们的答案PHImageRequestOptions version 从 iOS 16 开始 PH