2016-06-07 13 views
0

내 iPhone 앱에서 스포트라이트 색인을 구현했지만 특정 검색 문자열을 검색 할 수없는 것 같습니다.특정 문자열에 대해 ios 9 코어 스포트 라이트 검색이 작동하지 않습니다. CSSearchableItemAttributeSet

각 CSSearchableItemAttributeSet을 kUTTypeText 유형으로 만들고 표시 이름을 "D0010"으로 설정합니다. 또한 "D0010"을 포함하도록 키워드를 설정했습니다. (예 : D0011, D0012 등의 숫자가 증가하는 숫자가 몇 백 개 있습니다.)

앱이 오류없이 색인 생성을 완료했습니다.

"D001"을 계속 입력 할 때 스포트라이트 검색과 "D0"을 입력하면 3 가지 정도의 결과가 반환됩니다. 결과가 없습니다.

재미있는 것은 내가 "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 "); 

답변

0

아래로 서, 나는 indexSearchableItems를 추가하는 경우에만 색인 (완료 핸들러도 성공적으로 귀국일)에 대한 항목을 플래그 것을 알고 있지만 실현 didnt가 꽤 오랫동안 그것들을 색인화하는데 얼마나 오래 걸릴까요?

1 일 후에 모든 항목을 검색 할 수 있습니다.

기본적으로 약간의 시간이 걸립니다.