2015-10-05 124 views
0

我正在使用聚光灯搜索功能,我已经在我的功能中实现了所有必需的功能,但是仍然没有在搜索中获得项目,请给我建议。如何实施SportLight搜索?

-(void)functionForSportlightsearch{ 
    NSUserActivity *activity = [[NSUserActivity alloc] initWithActivityType:sportlightSearchID]; 
    activity.title = @"Item test"; 
    activity.keywords = [NSSet setWithArray:self.arrUnits]; 
    activity.eligibleForSearch = YES; 
    [activity becomeCurrent]; 
    } 

什么觉得还缺来实现这一点,我在viewDidLoad中(RootViewController的)调用此。

+0

请向我们展示如何处理此搜索活动? –

回答

0

在iOS 9中,Apple升级Handoff,将其与Spotlight关联。为此,应用程序只需注册已启动的活动(使用NSUserActivity)以及其呈现的内容(使用Core Spotlight);那么系统会处理该信息,并将其索引到本地或Apple服务器上。

苹果公司规定,关键字应该不遵循开发商警告被过度使用,与 :无关的关键字将被检测 和活动将不会通过他们搜索到。

要处理的搜索结果,在的appDelegate的具体方法必须被执行:

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray *restorableObjects))restorationHandler 

此方法应该重新关联到活动的视图,并将其呈现给用户。

有关详细信息:http://applidium.com/en/news/ios9_search_api/

+0

我们必须对info.plist文件做些什么? –

0

另外添加以下行于上述代码..

self.userActivity =活性;

userActivity是UIResponder类属性。