美文网首页
iOS 支持Spotlight搜索

iOS 支持Spotlight搜索

作者: 民谣里不是故事就是诗丶 | 来源:发表于2017-03-10 14:45 被阅读115次

    需要判断设备系统版本是否为iOS9及以上并导入框架

    CoreSpotlight/CoreSpotlight.hMobile 和 CoreServices/MobileCoreServices.h

    #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 90000

    #import <>

    #import

    #endif

    /**

    往iOS 9以上设备Spotlight中增加条目

    @param photo图片数据转化成二进制NSDatae.g.UIImagePNGRepresentation([UIImage imageNamed:@"DIY.jpg"])

    @param spotlightTitle搜索结果标题e.g.@"页zi"

    @param spotlightDesc搜索结果详细描述e.g.@"你要找的是不是XXX"

    @param keywords搜索关键字NSString组成的NSAtrray e.g.@[@"女神",@"校花"]

    @param spotlightInfo传递过去的值,可以作为一些数据传递给接受的地方

    @param domainIdid,通过这个id来判断是哪个spotlight

    */

    - (void)insertSearchableItem:(NSData*)photo spotlightTitle:(NSString*)spotlightTitle description:(NSString*)spotlightDesc keywords:(NSArray*)keywords spotlightInfo:(NSString*)spotlightInfo domainId:(NSString*)domainId {

    //

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

    attributeSet.title= spotlightTitle;//标题

    attributeSet.keywords= keywords;//关键字,NSArray格式

    attributeSet.contentDescription= spotlightDesc;//描述

    attributeSet.thumbnailData= photo;//图标, NSData格式

    //

    CSSearchableItem*item = [[CSSearchableItemalloc]initWithUniqueIdentifier:spotlightInfo

    domainIdentifier:domainIdattributeSet:attributeSet];

    [[CSSearchableIndexdefaultSearchableIndex]indexSearchableItems:@[item]

    completionHandler:^(NSError* error) {

    if(error) {

    NSLog(@"indexSearchableItems Error:%@",error.localizedDescription);

    }

    }];

    }

    相关文章

      网友评论

          本文标题:iOS 支持Spotlight搜索

          本文链接:https://www.haomeiwen.com/subject/weangttx.html