gpt4 book ai didi

objective-c - 使用 Spotlight 搜索结果以特定状态打开应用程序

转载 作者:搜寻专家 更新时间:2023-10-30 20:12:37 25 4
gpt4 key购买 nike

我有一个应用程序,可以通过从下拉菜单中选择来播放一系列广播电台。理想情况下,我想添加一些代码,以便 Spotlight 搜索返回下拉列表中的任何项目并打开应用程序,就像您在应用程序本身中执行此操作一样。

除了我发现的一些关于创建要索引的隐藏文件的旧帖子外,Spotlight 文档没有提供任何线索说明这是否可行。

有什么线索吗?

最佳答案

您的个人电台是如何在内部存储/表示的? Spotlight 是一个文件一个搜索结果。具有单个库数据库或类似库的应用程序通常会将这些项目导出到 ~/Library/Caches 文件夹的子文件夹中。您将为每个要搜索的项目编写一个聚光灯“ stub ”文件。这个“ stub ”文件将有自己单独的扩展名/文档类型(仍然可以通过您的应用程序打开),这就是您的 Spotlight 导入器的基础。

先例:AddressBook.app。

例如,在我的一个应用程序中,有一个中央(非基于文档的)抄本库数据库。我希望用户能够搜索单个成绩单,并让它们在 Spotlight 中显示为单独的结果。解决这个问题的唯一方法是让我的应用程序创建和维护一个包含可搜索文本表示的一次性“.transcriptstub”文件集合。

我说“一次性”是因为 ../Caches 中的内容在丢失时可以很容易地由您的应用程序重新创建。如果需要,我会在应用程序启动时更新它们(作为一个单独的 NSOperation 以防止长时间启动),并且每个单独的更新都是在运行时修改的。

当应用程序被交给这些 stub 之一打开时,它会使用文件中的一些标识符(也许是 UUID?)并在数据库中查找它。如果匹配,它会在 UI 中选择该项目。

关于objective-c - 使用 Spotlight 搜索结果以特定状态打开应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4010162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com