CoreSpotlight Espace de noms
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Permet aux applications d’ajouter des données à l’index de recherche système.
Classes
CSCustomAttributeKey |
Clé que les développeurs d’applications peuvent associer aux métadonnées d’un élément indexable qui peut apparaître dans les résultats de recherche utilisateur. |
CSIndexErrorCodeExtensions |
Méthodes d’extension pour l’énumération CoreSpotlight.CSIndexErrorCode. |
CSIndexExtensionRequestHandler |
Gestionnaire pour la communication entre l’application et l’index sur l’appareil. L’application n’a pas besoin d’être en cours d’exécution pour que cette communication se produise. |
CSLocalizedString |
Représente un objet de type chaîne qui retourne une version spécifique aux paramètres régionaux d’une chaîne. |
CSMailboxKey |
Représente les clés qui identifient les boîtes aux lettres couramment utilisées. |
CSPerson |
Un auteur ou un destinataire stocké dans un CSSearchableItemAttributeSet. |
CSSearchableIndex |
Index de recherche utilisé par Spotlight. |
CSSearchableIndex_CSOptionalBatchingExtension |
Méthodes d’extension pour T:CoreServices.CSSearchableIndex. |
CSSearchableIndexDelegate |
Objet délégué fournissant des membres appelés lors de la réindexation de l’index. |
CSSearchableIndexDelegate_Extensions |
Méthodes d’extension à l’interface ICSSearchableIndexDelegate pour prendre en charge toutes les méthodes du CSSearchableIndexDelegate protocole. |
CSSearchableItem |
Objet unique identifiable et pouvant faire l’objet d’une recherche dans un CSSearchableIndex. |
CSSearchableItemAttributeSet |
Contient le contenu réel à indexer pour la recherche. |
CSSearchQuery |
Recherche les données que le développeur a précédemment indexées avec l’API Core Spotlight. |
CSSearchQueryErrorCodeExtensions |
Méthodes d’extension pour l’énumération CoreSpotlight.CSSearchQueryErrorCode. |
Interfaces
ICSSearchableIndexDelegate |
Interface représentant les méthodes requises (le cas échéant) du protocole CSSearchableIndexDelegate. |
Énumérations
CSFileProtection |
Énumère les options de protection des fichiers dans les appels à M:CoreSpotlight.CSSearchableIndex.FromName*. |
CSIndexErrorCode |
Énumère les erreurs possibles associées à l’utilisation de Core Spotlight et à la recherche. |
CSSearchQueryErrorCode |
Énumère les erreurs qui peuvent se produire lors de l’exécution d’une requête Core Spotlight avec Start(). |
Délégués
CSSearchableIndexFetchHandler |
Gestionnaire d’achèvement utilisé dans FetchLastClientState(CSSearchableIndex, CSSearchableIndexFetchHandler). |
Remarques
Spotlight est la technologie de recherche système sur iOS et OS X. CoreSpotlight permet aux développeurs d’ajouter des données à l’index de recherche. Une application sur la table périodique, par exemple, peut indexer les différents éléments et afficher la page appropriée après une recherche.
L’ajout de données à Spotlight s’effectue en ajoutant CSSearchableItem des objets au 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");
}
});
Lorsque l’application est lancée via une recherche de contenu Spotlight, le système appelle la ContinueUserActivity méthode avec la ActivityType valeur définie sur 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