从 ALAssetsLibraryChangedNotification 通知中找出新添加的 ALAsset
Posted
技术标签:
【中文标题】从 ALAssetsLibraryChangedNotification 通知中找出新添加的 ALAsset【英文标题】:Find out newly added ALAsset from ALAssetsLibraryChangedNotification notification 【发布时间】:2014-05-05 10:27:39 【问题描述】:有没有办法从 ALAssetsLibraryChangedNotification 的用户信息中找出现在新添加的资产?
我已注册到 ALAssetsLibraryChangedNotification,并且在我的回调方法中收到了一个电话。在这里,我正在检查通知参数中的用户信息。但是我无法从用户信息中找到新添加/删除的资产。真的可以从用户信息中检索这些数据吗?或者我应该再次扫描整个库以找出现在添加的资产
【问题讨论】:
【参考方案1】:我从下面的苹果文档中得到了一些答案,
ALAssetsLibraryChangedNotification
当资产库的内容从使用数据的应用下发生更改时发送。 在 ios 4.0 中,通知的对象是 nil。
在 iOS 4.1 及更高版本中,通知对象是发布通知的库对象。
在 iOS 6.0 及更高版本中,用户信息字典描述了更改内容:
-
如果用户信息字典为 nil,则重新加载所有资产和资产组。
如果用户信息字典为空字典,则无需重新加载资产和资产组。
如果用户信息字典不为空,则重新加载受影响的资产和资产组。使用的密钥见“Notification Keys.”
此通知在任意线程上发送。
希望这会有所帮助。
【讨论】:
以上是关于从 ALAssetsLibraryChangedNotification 通知中找出新添加的 ALAsset的主要内容,如果未能解决你的问题,请参考以下文章