【发布时间】:2013-04-27 13:40:32
【问题描述】:
我为我的应用程序定义的自定义文档类型编写了一个 Spotlight 导入器。
一切正常,元数据字段被 Spotlight 正确索引(使用mdls 命令验证),Spotlight 搜索显示我的文档。
我遇到的唯一问题是,当我询问有关文件的信息时(在查找器)。
我希望这些字段出现在那里,因为我在 <allattrs> 和 <displayattrs> 部分中都声明了它们。
我在这里找到了几个与此问题相关的问题,没有一个对我有帮助。
导入器被捆绑到应用程序中,由系统加载(mdimport -L 确认了这一点)。
此外,捆绑结构似乎正确,schema.xml 出现在 Resources 文件夹中,schema.strings 出现在 en/lproj 文件夹中。
schema.xml 文件如下所示:
<schema version="1.0"
xmlns="http://www.apple.com/metadata"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.apple.com/metadata file:///System/Library/Frameworks/CoreServices.framework/Frameworks/Metadata.framework/Resources/MetadataSchema.xsd">
<types>
<type name="com.mydomain.myapp.mydocument">
<allattrs>
kMDItemTitle kMDItemAuthors kMDItemAlbum
</allattrs>
<displayattrs>
kMDItemTitle kMDItemAuthors kMDItemAlbum
</displayattrs>
</type>
</types>
还有几件事,我的系统缺少mdcheckschema 命令,但是 XML 文件太短了,我怀疑语法有问题。
有时,“更多信息”部分会显示文件的上次打开日期,有时什么也不显示。
最后,我尝试重新导入文件(mdimport),但无济于事。
我正在运行 Mac OS X Moutain Lion 10.8.3、Xcode 4.6.2。
所以我的问题是,我是否缺少将这些项目显示在“更多信息”部分中的内容? 有没有人遇到过这样的问题并找到了解决办法?
编辑:
到目前为止没有人回答我的问题,也许有人可以指点我一些关于这个问题的教程或文档?
【问题讨论】:
标签: macos cocoa plugins metadata spotlight