首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >openDocumentWithContentsOfURL:display:completionHandler: NSDocumentController失败

openDocumentWithContentsOfURL:display:completionHandler: NSDocumentController失败
EN

Stack Overflow用户
提问于 2015-11-03 20:12:43
回答 1查看 838关注 0票数 0

我正在实现NSApplicationDelegate的应用程序:openFiles,以获得特定文档的一些自定义行为。但是,对于某些文档,我需要默认的行为(它只是打开并显示它们)。因此,在对每个文档进行排序之后,我为每个文档调用了以下内容:

代码语言:javascript
复制
[[NSDocumentController sharedDocumentController] openDocumentWithContentsOfURL:[NSURL URLWithString:camDoc] display:YES completionHandler:^(NSDocument *document, BOOL alreadyOpen, NSError *error){
    NSLog(@"%@",document);
}];

在控制台中,将记录以下错误:

代码语言:javascript
复制
*** setObjectForKey: key cannot be nil

永远不调用完成处理程序。如果我注释掉完整的openFiles方法,那么文档就会很好地打开,因此NSDocument类的实现似乎是正确的。

我尝试暂时关闭沙箱,因为委托方法接收的是NSStrings而不是URL,所以我认为这可能是问题所在。这没什么用。

这里出什么问题了?

附加问题:我如何获得应用程序(从Finder)打开的安全范围URL?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-11 07:25:32

结果发现问题是由于NSURL的创建方式造成的。当然,这应该使用fileURL方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33508195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档