При использовании DocumentBrowserViewController
для доступа к файлам из других приложений возможно ли сохранить права доступа к этим файлам?
Конкретный вопрос
В настоящее время, для проверки концептуальных целей,Я распечатал URL для файла, выбранного через DocumentBrowserViewController
, на консоль, жестко запрограммировал этот URL где-то в моем коде и попытался открыть этот файл снова.Это не работает из-за: {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted"}}
Теперь, есть ли способ сохранить права доступа?
В сообщении в блоге я нашел что-то, используя:
do {
let data = try sourceURL.bookmarkData(
options: URL.BookmarkCreationOptions.withSecurityScope,
includingResourceValuesForKeys: nil,
relativeTo: nil)
print(data)
} catch {
print(error)
}
Но withSecurityScope
"недоступен".(Чтобы быть точным: 'withSecurityScope' has been explicitly marked unavailable here (Foundation.NSURL)
)
Есть ли способ сделать такого рода вещи?
С уважением и заранее спасибо:)
Редактировать
Так что, может быть, я немного поспешил с вопросом, приведенный выше код просто необходимо скорректировать на:
do {
let data = try sourceURL.bookmarkData(
options: URL.BookmarkCreationOptions.minimalBookmark,
includingResourceValuesForKeys: nil,
relativeTo: nil)
print(data)
} catch {
print(error)
}
И эти данные затем можно использовать примерно так:
let url = try URL.init(resolvingBookmarkData: data, bookmarkDataIsStale: &stale)!
:)