Я пытаюсь создать закладки с областью безопасности для пакетов файлов. То есть каталоги, где NSURLIsPackageKey
это YES
. Я знаю, что обычно вы не должны иметь возможность создавать закладки в области документа для каталогов, но я ожидал, что пакеты будут освобождены от этого (в конце концов, я получаю доступ к ним с помощью NSOpenPanel
, которому не разрешено выбирать каталоги, но там нет проблем).
У меня есть права, настроенные с com.apple.security.files.bookmarks.document-scope
= true
, и я делаю базовый вызов создания закладки с URL-адресом файла, который я только что получил от NSOpenPanel
(так что у меня есть доступ):
NSError *bookmarkError = nil;
NSData *bookmark = [fileURL
bookmarkDataWithOptions:NSURLBookmarkCreationWithSecurityScope
includingResourceValuesForKeys:nil
relativeToURL:[self fileURL]
error:&bookmarkError];
Однако после этого вызова и bookmark
, и bookmarkError
становятся nil
.
Нужно ли мне просто отказаться от этого и создать закладки на уровне приложения, даже если у меня есть приложение на основе документов? Это кажется неуместным, но я не вижу другого обходного пути.
com.apple.security.files.bookmarks.app-scope
. Это привело меня к мысли, что у меня работают закладки в области документа, пока я не понял, что[self fileURL]
все еще равен нулю. - person Tom Harrington   schedule 14.08.2013