Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 相同文件扩展名的重叠UTI声明_Macos_Cocoa_Uti - Fatal编程技术网

Macos 相同文件扩展名的重叠UTI声明

Macos 相同文件扩展名的重叠UTI声明,macos,cocoa,uti,Macos,Cocoa,Uti,我的应用程序的用户不断遇到与其他应用程序相关的问题,这些应用程序为与我的应用程序相同的文件扩展名声明了不同的UTI。我想我最好用一个例子来描述这一点: 我的应用程序支持导入和导出OPML文件。为此,我在info.plist中导入org.opm.opml UTI。这通常可以正常工作,但如果其他应用程序为opml文件扩展名声明不同的UTI,则会失败。例如com.redlex.opml或com.xwavesoft.cloudoutliner.opml 我能做些什么来解决这个问题吗?我能告诉launch

我的应用程序的用户不断遇到与其他应用程序相关的问题,这些应用程序为与我的应用程序相同的文件扩展名声明了不同的UTI。我想我最好用一个例子来描述这一点:

我的应用程序支持导入和导出OPML文件。为此,我在info.plist中导入org.opm.opml UTI。这通常可以正常工作,但如果其他应用程序为opml文件扩展名声明不同的UTI,则会失败。例如com.redlex.opml或com.xwavesoft.cloudoutliner.opml


我能做些什么来解决这个问题吗?我能告诉launch services我的应用程序接受所有扩展名为.opml的文件吗?

云大纲视图今天在MAS上更新,现在查看.opml文件的UTI,com.xwavesoft.cloudoutliner.opml现在不见了,com.redlex.opml现在就位了。这将是无趣的,除了OPML文件现在在MindNode中打开没有问题之外

除了“各种修复和改进”之外,我找不到任何Cloud Outliner的发行说明。但似乎有些东西变得更好了。所以:在我的例子中,简单的答案是“更新云大纲视图”,但我不确定这是否解决了更大的问题。我的系统上也有Mellel(很明显,对吧?!),但这似乎并没有引起同样的问题

对于那些观看这个线程的人来说,这个问题表现为MindNode在其打开对话框中显示OPML文件的灰色图标。将OPML拖动到dock中的MindNode图标也不会产生任何结果


Rob

我通过以下解决方法解决了这个问题:

  • 我从CbundleDocumentTypes列表中删除了整个LSItemContentTypes条目
  • 在NSDocument子类中,我使用NSString的rangeOfString::方法在typeName参数中查找@“opml”关键字

  • 此解决方案已由一位用户确认。

    您能在info.plist中发布UTI声明的完整XML吗?您可以在这里找到它:Thx。我不知道,我很抱歉。您尝试过*.opml吗?您所说的“失败”是什么意思?Peter:opml文件在打开面板中变灰,并且将文件拖到应用程序图标上也不起作用(不支持的文件类型)。