Поиск в центре внимания ios 9 не работает для определенных строк CSSearchableItemAttributeSet
Я успешно (вроде как) внедрил индексирование прожектора в своем приложении для iPhone, но некоторые строки поиска, похоже, не могут быть найдены.
Я создаю каждый CSSearchableItemAttributeSet как тип kUTTypeText, я устанавливаю отображаемое имя, заголовок как "D0010". Я также установил для ключевых слов "D0010". (есть несколько сотен с увеличивающимся числом, например, D0011, D0012...)
Приложение завершило индексацию без ошибок.
Когда я перехожу к поиску в центре внимания и набираю "D0", я получаю три или около того результатов назад, так как я продолжаю набирать "D001", я не получаю никаких результатов.
Забавно, если я наберу "0010", я получу точный результат!
Кто-нибудь знает, что происходит?
Частичная цель C код ниже.
attributeSet.displayName = [[NSString alloc] initWithFormat:@"%@", [dataflow flowCounter]];
attributeSet.title = [[NSString alloc] initWithFormat:@"%@", [dataflow flowCounter]];
//Sounds similar to displayName but is not displayed to user
attributeSet.contentDescription = [[NSString alloc] initWithFormat:@"%@", [dataflow flowDescription]];
attributeSet.keywords = @[[[NSString alloc] initWithFormat:@"%@", [dataflow flowCounter]],[[NSString alloc] initWithFormat:@"D%@", [dataflow flowNumber]],[dataflow flowCounter], attributeSet.displayName, attributeSet.contentDescription,[dataflow flowNumber],[dataflow flowCounter] ];
CSSearchableItem *item1 = [[CSSearchableItem alloc] initWithUniqueIdentifier:[[NSString alloc] initWithFormat:@"DTC_%@", [dataflow flowNumber]] domainIdentifier:@"com.utiligroup" attributeSet:attributeSet];
........
[[CSSearchableIndex defaultSearchableIndex] indexSearchableItems:[self.spotlightsearch copy]
completionHandler: ^(NSError * __nullable error) {
if (error != nil ){
NSLog(@"Error");
}
else {
NSLog(@"dataflows added ");
1 ответ
Отойдите, я знал, что добавление indexSearchableItems помечало только элементы для индексации (даже при успешном возвращении обработчика завершения), но я не понимал, сколько времени потребуется для их индексации.
1 день спустя и все предметы теперь доступны для поиска.
Так что в основном это занимает некоторое время.