CoreSpotlight 네임스페이스
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
애플리케이션에서 시스템 검색 인덱스에 데이터를 추가할 수 있습니다.
클래스
CSCustomAttributeKey |
앱 개발자가 사용자 검색 결과에 표시할 수 있는 인덱싱 가능한 항목에 대한 메타데이터와 연결할 수 있는 키입니다. |
CSIndexErrorCodeExtensions |
CoreSpotlight.CSIndexErrorCode 열거형에 대한 확장 메서드입니다. |
CSIndexExtensionRequestHandler |
애플리케이션과 디바이스의 인덱스 간의 통신을 위한 처리기입니다. 이 통신이 수행되려면 앱을 실행할 필요가 없습니다. |
CSLocalizedString |
로캘별 문자열 버전을 반환하는 문자열과 유사한 개체를 나타냅니다. |
CSMailboxKey |
일반적으로 사용되는 사서함을 식별하는 키를 나타냅니다. |
CSPerson |
에 저장된 CSSearchableItemAttributeSet작성자 또는 받는 사람 |
CSSearchableIndex |
Spotlight에서 사용하는 검색 인덱스입니다. |
CSSearchableIndex_CSOptionalBatchingExtension |
T:CoreServices.CSSearchableIndex에 대한 확장 메서드입니다. |
CSSearchableIndexDelegate |
인덱스를 다시 인덱싱할 때 호출되는 멤버를 제공하는 대리자 개체입니다. |
CSSearchableIndexDelegate_Extensions |
프로토콜의 모든 메서드를 ICSSearchableIndexDelegate 지원하기 위해 인터페이스에 대한 확장 메서드입니다 CSSearchableIndexDelegate . |
CSSearchableItem |
에서 고유하게 식별할 수 있는 검색 가능한 개체입니다 CSSearchableIndex. |
CSSearchableItemAttributeSet |
검색을 위해 인덱싱할 실제 콘텐츠를 보유합니다. |
CSSearchQuery |
개발자가 이전에 Core Spotlight API를 사용하여 인덱싱한 데이터를 검색합니다. |
CSSearchQueryErrorCodeExtensions |
CoreSpotlight.CSSearchQueryErrorCode 열거형에 대한 확장 메서드입니다. |
인터페이스
ICSSearchableIndexDelegate |
프로토콜 CSSearchableIndexDelegate의 필수 메서드(있는 경우)를 나타내는 인터페이스입니다. |
열거형
CSFileProtection |
CoreSpotlight.CSSearchableIndex.FromName*에 대한 호출에서 파일 보호 옵션을 열거합니다. |
CSIndexErrorCode |
Core Spotlight 사용 및 검색과 관련된 가능한 오류를 열거합니다. |
CSSearchQueryErrorCode |
를 사용하여 Core Spotlight 쿼리 Start()를 실행하는 동안 발생할 수 있는 오류를 열거합니다. |
대리자
CSSearchableIndexFetchHandler |
에서 사용되는 완료 처리기입니다 FetchLastClientState(CSSearchableIndex, CSSearchableIndexFetchHandler). |
설명
추천은 iOS 및 OS X의 시스템 검색 기술입니다. CoreSpotlight를 사용하면 개발자가 검색 인덱스에 데이터를 추가할 수 있습니다. 예를 들어 주기적 테이블에 대한 앱은 다양한 요소를 인덱싱하고 검색 후 관련 페이지를 표시할 수 있습니다.
Spotlight에 데이터를 추가하는 작업은 에 개체를 추가하여 CSSearchableItem 수행됩니다 DefaultSearchableIndex.
//Create CSSearchableItems
var dataItems = searchIndexMap.Select (keyValuePair => {
Guid guid = keyValuePair.Key;
String data = keyValuePair.Value;
var attributeSet = new CSSearchableItemAttributeSet (UTType.Text);
attributeSet.Title = data + " Page";
attributeSet.ContentDescription = "My app's data relating to " + data;
attributeSet.TextContent = data;
var dataItem = new CSSearchableItem (guid.ToString (), "com.xamarin.CoreSpotlight0", attributeSet);
return dataItem;
});
//Add items to system index
CSSearchableIndex.DefaultSearchableIndex.Index (dataItems.ToArray<CSSearchableItem> (), err => {
if (err != null) {
Console.WriteLine (err);
} else {
Console.WriteLine ("Indexed items successfully");
}
});
추천 콘텐츠 검색을 통해 애플리케이션이 시작되면 시스템은 로 설정된 메서드를 ActivityType 호출 ContinueUserActivity 합니다ActionType.
public override bool ContinueUserActivity (UIApplication application, NSUserActivity userActivity, UIApplicationRestorationHandler completionHandler)
{
if (userActivity.ActivityType == CSSearchableItem.ActionType) {
var uuid = userActivity.UserInfo.ObjectForKey (CSSearchableItem.ActivityIdentifier);
//... handle Spotlight search for identifier