使用Spotlight作为应用程序的"数据库"

vic*_*vic 6 database macos cocoa spotlight

我正在开发一个OS X应用程序来组织"事物"(因为iTunes是音乐,iPhoto是照片).我没有使用自己的数据库和索引,而是考虑使用Spotlight来实现此目的.

有没人试过这个?这是明智的吗?

我认为,主要的好处是简单性和避免冗余.当OS X内置一个时,实现我自己的索引机制似乎有点浪费.

但是,我没有使用Spotlight的经验.从用户的角度来看,我确实知道它在旧版本的OS X中一直很慢而且不精确.我也有一种直觉,因为它的目的是搜索整个文件系统,将其用于"本地"目的变得很苛刻.

显然,我的应用程序的索引需要不断更新.可以mdimport用于此吗?

bbu*_*bum 6

有几个应用以这种方式运送 我相信至少有一家公司将所有客户数据放入文本文件中,以便使用Spotlight查找信息.我一直用关键字保存笔记,完全相信Spotlight以后能够找到它!

通常,您不需要使用Spotlight来使索引保持最新.它非常适合快速查看文件更改和索引.

关键,实际上是找出你的文件格式.如果您使用Spotlight可以索引的内容(比如文本文件),那么您不必编写导入程序.如果没有,你这样做.另外,看看Core Data,因为它也有很好的Spotlight支持.

一个警告; 有些用户手动关闭特定卷上的聚光灯索引.很少见,但可能.