次の方法で共有


Xamarin.iOS の検索 API

この記事では、ユーザーが Xamarin.iOS アプリ内の情報と機能を検索できるように、iOS 9 で提供されるアプリ検索 API の使用について説明します。

iOS 9 では検索が拡張され、Xamarin.iOS アプリ内の情報や機能にアクセスできる優れた新しい方法が提供されました。 新しい App Search API を使うと、Spotlight と Safari の検索結果、Handoff、Siri のリマインダーと提案を使ってアプリ コンテンツを検索できるようになります。 これにより、ユーザーはアプリ内の奥深くにあるアクティビティや情報にすばやくアクセスできます。

さらに、新しい検索 API を使うと、検索の実装経験がなくても、アプリに検索を簡単に統合できます。 このため、Apple は、通常は数時間で iOS 9 アプリのコンテンツが App Search を使って汎用的に検索できるようになると主張しています。

アプリ検索を使用して汎用検索可能な iOS 9 アプリ コンテンツの例

アプリ検索は、次の 3 つの個別の API で構成されます。

  1. NSUserActivity - これは、Apple が iOS 8 でリリースした Handoff API の拡張機能です。 これは、ユーザーがアプリの操作履歴をパブリックとプライベートの両方で検索できるようにするために使用されます。

  2. Core Spotlight - アプリのコンテンツをインデックス作成して検索結果に表示できるようにします。 これは、項目を追加および削除できるデータベース API と同様に機能し、アプリ内のプライベート コンテンツのインデックスを作成するのに最適な方法です。

  3. WebMarkup - (アプリ内からだけでなく) Web インターフェイスを介してコンテンツにアクセスできるようにするアプリ向け。 Web コンテンツは、Apple によってクロールされ、ユーザーの iOS 9 デバイス上のアプリへのディープ リンクが提供される特別なリンクでマークできます。

アプリ検索アプローチの選択

これらのメソッドのどれを実装するかの決定は、アプリによって提供される操作の種類と、アプリで提示されるコンテンツの種類によって異なります。

次のガイドラインに従ってください。

  • NSUserActivity – このフレームワークを使用して、パブリック コンテンツとプライベート コンテンツの両方の検索可能性と、アプリ内のナビゲーション ポイントの検索可能性が得られます。

  • Core Spotlight – このフレームワークを使用して、デバイスに格納されているプライベート データの検索可能性が得られます。

  • Web マークアップ – このフレームワークを使用して、アプリ内だけでなく、アプリの Web サイトからもコンテンツを表示するアプリの検索可能性が得られます。

アプリ検索のアプローチはそれぞれ異なり、個別に使用することもできますが、Apple ではこれらを連携するように設計されています。 複数のメソッドを使用して特定の項目のインデックスを作成する場合は、各アプローチで同じ項目 ID を使用し、個々のリンクが連携するようにしてください。

複数のアプローチを使用すると、エンド ユーザーによってコンテンツが確実に見つかるだけでなく、検索内からの項目の優先度付けにも役立ちます。

優先度付けプロセスは開発者にとってほぼ透過的ですが、特定の項目に対するユーザーの操作は、この優先度 (リンクをタップするユーザーなど) に大きく影響します。 豊富で有益な項目を提供することで、ユーザーがコンテンツを操作しやすくなり、優先度が向上します。

インデックスを作成するコンテンツ

Apple では、アプリで検索インデックスを提供するコンテンツとアクションについて、次のような提案を行っています。

  • アプリ内からユーザーによって表示、作成、またはキュレーションされたすべてのコンテンツ。
  • アプリ内のナビゲーション ポイントと機能。
  • 最近デバイスにダウンロードされたアプリによって表示される新しいメッセージ、コンテンツ、その他の種類の項目など。

アプリ検索の機能強化

iOS 10 の Core Spotlight は、アプリ検索に次のようないくつかの拡張機能を提供します。

  • クラウドソースのディープリンク人気度 (差分プライバシー) - 検索結果でディープリンクされたアプリ コンテンツを促進する方法を提供します。
  • アプリ内検索 - 新しい CSSearchQuery クラスを使用して、メール、メッセージ、メモ アプリの動作に似たアプリ内 Spotlight 検索機能を提供します。
  • 検索の継続 - ユーザーが Spotlight または Safari で検索を開始し、アプリを開き、その検索を続けられるようにします。
  • 検証結果の視覚化 - Apple の App Search API 検証ツールを使用すると、Web サイトのマークアップの視覚的な表現と、テスト実行時のディープ リンクが表示されるようになりました。
  • メッセージ アプリの画像共有 - メッセージ内で (メッセージ App Extension を介して) 共有するために提供される一般的なアプリ内イメージを Spotlight 検索に表示できるようにします。

詳細については、アプリ検索の機能強化に関するガイドを参照してください。

プロアクティブな候補

iOS 10 は、システムが適切な時間にユーザーに役立つ情報を事前に自動的に提示できるようにすることで、アプリへのエンゲージメントを促進する新しい方法を提供します。 iOS 9 が Spotlight、Handoff、Siri からの提案を使用してアプリにディープ検索を追加する機能を提供したのと同様に、iOS 10 では、アプリは次の場所からシステムによってユーザーに表示する機能を公開できます。

  • アプリ スイッチャー
  • ロック画面
  • CarPlay
  • マップ
  • Siri のインタラクション
  • QuickType の候補

アプリは、NSUserActivity、Web マークアップ、Core Spotlight、MapKit、メディア プレーヤー、UIKit などのテクノロジのコレクションを使用して、この機能をシステムに公開します。

詳細については、プロアクティブな候補に関するガイドを参照してください。

まとめ

この記事では、Xamarin.iOS アプリ用に iOS 9 で提供される新しい検索 API 機能について説明しました。 また、コンテンツのインデックスを作成するための NSUserActivityCore SpotlightWeb マークアップ メソッドについて説明しました。 最後に、特定の検索アプローチを使用するタイミングと、インデックスを作成する必要があるコンテンツの種類について簡単に説明しました。