我正在编写一个Cocoa应用程序,该应用程序需要在其Dock图标上接受已装入卷的下降。它不是基于文档的;我打算将每个卷分派到application:openFiles
中的相应处理程序。
我已经使Dock点亮了应用程序的磁贴以进行拖动,但是放下时,我的应用程序显示警告:“无法打开文档[卷名]。 [我的应用程序]无法打开此类文件。”我的application:openFiles:
方法从不运行,即使该委托已连接并发送了其他委托消息。
那么,接受Dock磁贴上的一滴体积的正确方法是什么?
最佳答案
您的Info.plist
可能未正确设置。它应包括以下内容:
CFBundleDocumentTypes = (
{
LSItemContentTypes = (
"public.volume"
);
}
);
或者如果需要支持10.5之前的版本,则可以使用
CFBundleOSTypes
和disk
代替。通过这样做,我能够使
application:openFiles:
工作。如果您已经这样做了,可能是启动服务感到困惑……清理并重建您的项目,尝试使用其他用户帐户,使用
lsregister
,挥手告别,等等。关于cocoa - 接受Dock图标上的音量下降,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4361530/