iOS 在照片框架查询中从 Whatsapp 中排除图像
Posted
技术标签:
【中文标题】iOS 在照片框架查询中从 Whatsapp 中排除图像【英文标题】:iOS exclude images from Whatsapp in Photos framework query 【发布时间】:2018-10-26 14:58:33 【问题描述】:是否可以只查询设备相机拍摄的 PHAsset?例如排除 Whatsapp 发送给您的图像。
我尝试了以下方法但没有成功: 1. 按资产 mediaSubtype 和 sourceType 过滤 2. 按原始文件名过滤,因为 Whatsapp 图像通常在文件名中使用 UUID。
第二个选项似乎最有希望,可能与位置等其他元数据结合使用(WhatsApp 图像通常会去除此信息)。
理想情况下,过滤应该发生在 PHAsset 查询上,并且出于性能原因不需要调用 ImageManager.requestImage()。
【问题讨论】:
【参考方案1】:您可以过滤掉“WhatsApp”相册中的资产。
这是您可以使用的示例函数(swift 4.2):
static private func assetIsFromWhatsapp(_ asset : PHAsset) -> Bool
let collection = PHAssetCollection.fetchAssetCollectionsContaining(asset, with: .album, options: nil)
for index in 0..<collection.count
let item = collection.object(at: index)
if item.localizedTitle == "WhatsApp"
return true
return false
【讨论】:
以上是关于iOS 在照片框架查询中从 Whatsapp 中排除图像的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Swift 从 iOS 应用程序共享音频/图像到 whatsapp
如何使用swift在ios上选择和删除诸如whatsapp或iMessage之类的消息