我使用NSUSerActivity
andCoreSpotlight
进行索引。我像往常一样thumbnailURL
在属性中设置。contentAttributesSet
图像从服务器下载,并在图像下载之前创建活动对象。所以我设置了一个“占位符”图像,当我有机会更新contentAttributesSet.thumbnailURL
到正确的图像时。但是当我尝试在 Spotlight 中搜索相同的项目时,图像保持不变。
更新此类信息时,我是否需要注意任何特殊情况?
我使用NSUSerActivity
andCoreSpotlight
进行索引。我像往常一样thumbnailURL
在属性中设置。contentAttributesSet
图像从服务器下载,并在图像下载之前创建活动对象。所以我设置了一个“占位符”图像,当我有机会更新contentAttributesSet.thumbnailURL
到正确的图像时。但是当我尝试在 Spotlight 中搜索相同的项目时,图像保持不变。
更新此类信息时,我是否需要注意任何特殊情况?
我认为这是 iOS 9.0 - 9.2 中的一个错误。它似乎在 iOS 9.3+ 上运行良好
据我所知,这是缓存特定NSUserActivity
. 该CoreSpotlight
框架似乎将图标数据与 相关联activityType
,因此即使创建新NSUserActivity
对象也不允许您更新图标图像。您可以做的最好的事情是在内部跟踪所有持久标识符,删除旧标识符,并创建一个全新的 NSUserActivity ,用户也必须将其视为新的快捷方式。
这绝对是一个愚蠢的问题,我希望在 iOS 9 发布后的 3.5 年里,Apple 会引入一种更新NSUserActivity
缩略图的方法。
缩略图 URL 仅适用于local
url。不是远程的。您必须使用 thumbnailData。