2

我想在我的应用程序中修改文件的 Spotlight 元数据属性(即不在 Spotlight 导入器中),但我找不到任何 API 可以这样做。是否可以?指向相关文档的指针是理想的。

如果它有帮助,这是我的用例:

我想在核心数据存储中存储对文件系统路径的引用。理想情况下,即使移动了文件,我也应该能够找到文件,可能跨越已安装的卷。我的理解是归档的 FSRef 或 AliasRecord 不会起到作用,因为它们对于跨已安装卷的移动并不是不变的。所以我的计划是存储一个 URL 并将一个 UUID(也存储在数据存储中)添加到文件的 Spotlight 元数据中,这样如果应用程序时 URL 不再指向文件,我就可以对该 UUID 执行 Spotlight 查询回去寻找文件。

4

1 回答 1

2

经过进一步研究,使用 Spotlight 并不是该用例的最佳解决方案。AliasRecord 是更好的文件持久存储。它会自动跟踪移动/重命名/等。您可以在此处阅读有关 AliasRecords的更多信息。Chris Hansen 为 AliasRecords 编写了一个 Objective-C 包装器,BDAlias. 它目前可从rentzsch.com SVN 获得。

于 2008-10-20T21:06:15.457 回答