Я пытаюсь добавить свою собственную активность в результаты поиска Spotlight на osx 10.11. Но после многих попыток я не смог попасть в результаты поиска Spotlight не по поисковым словам, а не по поиску по названию.
{
self.userActivity = [[NSUserActivity alloc] initWithActivityType:@"Reverse DNS keyword"];
self.userActivity.title = @"Some title";
self.userActivity.keywords = [NSSet setWithArray: @[@"Some keywords"]];
self.userActivity.eligibleForSearch = YES;
self.userActivity.eligibleForHandoff = YES;
self.userActivity.eligibleForPublicIndexing = YES;
self.userActivity.userInfo = @{@"name" : @"Some name"};
self.userActivity.delegate = self;
self.userActivity.requiredUserInfoKeys =[NSSet setWithArray: @[@"name"]];
self.userActivity.needsSave = YES;
[self.userActivity becomeCurrent];
NSApp.userActivity = self.userActivity;
}
- (void)userActivityWillSave:(NSUserActivity *)userActivity
{
userActivity.userInfo = @{@"name" : @"Some name"};
}
Также я обновил Info.plist с помощью массива NSUserActivityTypes и элемента из аргумента initWithActivityType:
Также я заметил, что в консоли иногда появляются сообщения:
16/09/2016 13:14:49.731 Caching encoded userInfo to use until we are marked dirty again (UAUserActivity.m #1567)
16/09/2016 13:14:49.731 Returning cached encoded userInfo (UAUserActivity.m #1508)