2017-11-19 2 views
0

Core Spotlightのインデックス作成に関する質問があります。iOSアプリにSpotlight拡張機能を使用する必要がありますか?

メインビューコントローラーのメソッドを使用してデータをインデックス付けします。これは正常に動作します。ただし、索引データはSpotlight検索では表示されなくなります(ほとんどの場合、有効期限は将来何年に設定されます)。

これはどのように修正する必要がありますか?私はSpotlightエクステンションを作成しようとしましたが、共有されたアプリケーショングループコンテナに保存されたデータのコピーにアクセスしましたが、拡張機能が正常に動作しているかどうかをチェックする方法がわかりません。

コードを投稿してもうれしいですが、インデックスコードが正常に動作しているようです。私はインデックスを永続させる方法を知りません。

ご協力いただければ幸いです。

+0

Spotlight拡張機能をデバッグできるはずです。件名:[iOS Appexをデバッグする方法](https://medium.com/@einedinedininios-debugging-application-extension-without-a-host-app-89abf35a36af)のブログ記事を読んでください。 –

+0

リンクをありがとう。私はそれを理解していると思う。私はちょうど私がSpotlight appexを実際に起動するにはどうすればいいのだろうかと思っています。 – Chris

答えて

1

今後の参考として、私のコードでエラーが見つかりましたが、修正されたのでSpotlightインデックスは期待通りに動作します。 Spotlight拡張機能を使用する必要はありませんでした。

私の索引付け方法は、すべてのデータ項目を再索引付けする前に、索引を最初に消去しました。それはこれを行う良い方法ではないことが判明しました。インデックスが消去されていて、メソッドが終了する前に中断されている必要があります(アプリがバックグラウンドになっている可能性があります)。これにより、インデックスは空のままになりました。

ここでは、新しいデータ項目ごとに個別にインデックスを作成し、ユーザーが削除したときにそれらを個別に削除します。これは期待通りに機能し、インデックスは持続します。私の特別な目的のために、私はSpotlight拡張機能を必要としませんでした。

関連する問題