首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何删除特定的NSUserActivity搜索索引?

如何删除特定的NSUserActivity搜索索引?
EN

Stack Overflow用户
提问于 2016-01-07 12:28:42
回答 1查看 1.1K关注 0票数 2

我使用NSUserActivity来索引用户活动以进行搜索。我找到了一个删除特定NSUserActivity的解决方案,将一个带有relatedUniqueIdentifierCSSearchableItemAttributeSet分配给NSUserActivity

代码语言:javascript
复制
let attributeSet = CSSearchableItemAttributeSet(itemContentType: kUTTypeContact as String)
attributeSet.relatedUniqueIdentifier = objectId

let activity = NSUserActivity(activityType: Employee.domainIdentifier)
activity.title = name
activity.userInfo = userActivityUserInfo
activity.keywords = [email, department]
activity.contentAttributeSet = attributeSet

并将其删除

代码语言:javascript
复制
[[CSSearchableIndex defaultSearchableIndex] 
deleteSearchableItemsWithIdentifiers: objectId completionHandler:^(NSError *deletionError) {  
        if (deletionError) {  
            NSLog(@"Could not delete items from the search index with error %@", deletionError);  
        }  
    }]; 

我不知道这是不是一个正确的解决方案。您是否有更好的解决方案来删除特定的NSUserActivity搜索索引?

EN

回答 1

Stack Overflow用户

发布于 2019-05-16 01:37:07

从iOS 12开始,有两种方法可以删除NSUserActivity

代码语言:javascript
复制
class func deleteAllSavedUserActivities(completionHandler: () -> Void)

class func deleteSavedUserActivities(withPersistentIdentifiers: [NSUserActivityPersistentIdentifier], completionHandler: () -> Void)

文档指出:“删除Core Spotlight存储的或作为Siri快捷方式捐赠的所有用户活动。”

https://developer.apple.com/documentation/foundation/nsuseractivity

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34647405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档