我有一个简单的基于文档的 Cocoa 应用程序调用“RaiseMan”。当我去保存一个文件时,这条消息出现在控制台中:
-[NSDocumentController fileExtensionsFromType:] 已弃用,并且在传递统一类型标识符 (UTI) 时不起作用。如果应用程序没有直接调用它,那么问题可能是其他一些 NSDocument 或 NSDocumentController 方法被实际上没有在任何地方声明的 UTI 混淆了。也许它应该在此应用程序的 Info.plist 的 UTExportedTypeDeclarations 部分中声明,但事实并非如此。所谓的 UTI 是“com.bignerdranch.raiseman-doc”。
如果我将当前文件另存为“测试”,结果是一个以 .plist 格式打开的文件,而不是使用 Raiseman 应用程序打开的文件。如果我将它保存为“Test.rsmn”(明确输入扩展名),它会将其保存为 Raiseman 类型的文件,但是当我重新打开该文件时,我无法访问任何用户首选项或首选项面板 (.xib) .
上下文:我目前正在学习 Aaron Hillegass 的Mac OS X 编程,第 13 章...
最佳答案
因此,为了达到预期的结果,我确保在项目目标的属性检查器下,标识符和 UTI 类型(在文档类型表中)以及 .plist 文件中的 UT 类型标识符是都一样<key>UTTypeIdentifier</key>
<string>"com.yourDomainName.ProductName"</string>
.
关于objective-c - 保存、文档扩展名和首选项 (Info.plist),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16390319/