Cocoa NSDocument: getting autosave to work

馋奶兔 提交于 2019-12-22 06:37:04

问题


Documentation simply states that setting setAutosavingDelay to anything > 0 on the shared doc controller should do it, but after calling

[[NSDocumentController sharedDocumentController] setAutosavingDelay:2.0];

in my controller, autosave doesn't seem to work: I neither see anything in ~/Library/Autosave Information/, nor is

[[[NSDocumentController sharedDocumentController] currentDocument] autosavedContentsFileURL]

initialized.

Note that in my app, normal loading and saving work fine (keyedarchivers, nscoding-based class for my docs, etc).


回答1:


Have you overridden -updateChangeCount: at all? I'm pretty certain that Apple's implementation is the code that starts up the autosave timer. Also, what if you experiment with a longer timer?




回答2:


Some people find that the directory ~/Library/Autosave Information is owned by root, and so files can not be written therein. See for example http://discussions.apple.com/thread.jspa?threadID=2252306

I don't know how the bug arises but I was bitten by it -- the directory was created 2010-06-17 12:19 and I assume that the permissions were wrong from that moment.



来源:https://stackoverflow.com/questions/408159/cocoa-nsdocument-getting-autosave-to-work

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!