Я успешно (вроде) реализовал индексирование прожектора в моем приложении для iPhone, но некоторые поисковые строки, похоже, не могут быть найдены.ios 9 core spotlight поиск не работает для определенных строк CSSearchableItemAttributeSet
Я создаю каждый CSSearchableItemAttributeSet как тип kUTTypeText, я устанавливаю отображаемое имя, название как «D0010». Я также задал ключевые слова, включая «D0010». (есть несколько сотен с увеличивающимся числом, например D0011, D0012 ...)
Приложение завершило индексирование без ошибок.
Когда я перейду к поиску прожекторов и напечатаю «D0», я получаю три или около того результатов, так как я продолжаю набирать «D001», я не получаю никаких результатов.
Забавно, если я наберу «0010», я получаю точный результат!
Есть ли идеи, что происходит?
Частичный код Цель ниже.
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 ");