我想让我的应用程序准备好进行聚光灯索引编制,因此我获得了下面的代码,可将项目添加到Core Spotlight:

CSSearchableItemAttributeSet *attributeSet = [[CSSearchableItemAttributeSet alloc]initWithItemContentType:(NSString *)kUTTypeImage];

attributeSet.title = appName;
attributeSet.contentDescription = appDescription;

attributeSet.keywords = appKeywordsArray;

UIImage *image = [UIImage imageNamed:@"tile-blue.png"];
NSData *imageData = [NSData dataWithData:UIImagePNGRepresentation(image)];
attributeSet.thumbnailData = imageData;

CSSearchableItem *item = [[CSSearchableItem alloc]initWithUniqueIdentifier:appIdentifier domainIdentifier:@"com.myapp" attributeSet:attributeSet];

[[CSSearchableIndex defaultSearchableIndex] indexSearchableItems:@[item] completionHandler: ^(NSError * __nullable error) {
    if (!error)
        NSLog(@"Search item indexed");
}];

因此,每次运行时,它都会记录Search item indexed,因此在索引编制过程中不会出错。但是,当我在Spotlight中搜索时,没有任何显示。我究竟做错了什么?

最佳答案

目前,Spotlight似乎无法在某些设备上运行。

您的代码应可在模拟器上运行。

10-08 16:57