Переименование документа с помощью UIDocumentBrowserViewController - PullRequest
0 голосов
/ 30 октября 2018

Я использую «новый способ» хранения документов (iOS 11+), используя UIDocumentBrowserViewController . Нет необходимости в iCloud API, правах и т. Д. - просто работает (под управлением отдельного процесса браузера документов).

Однако я не выяснил, как переименовать (т.е. переместить) документ программным способом, по крайней мере, в iCloud. Стандартный «url.setResourceValues ​​()» прекрасно работает в локальной файловой системе, но отображает в 513 / не разрешено в iCloud. Также все прежние способы сделать это (использование полного набора возможностей и полномочий iCloud, использование сложной оркестровки FileCoordinator и т. Д.) Также не работают, когда созданный документ фактически контролируется через браузер документов.

Я не смог найти разумную документацию или пример того, как использовать UIDocumentBrowser , чтобы также переместить документ под его (и отчасти мой) контроль. Существует режим UIDocumentBrowserImportModeMove , который может делать то, что мне нужно, однако я понятия не имею, как программно инициировать это для данного UIDocument .

Кто-нибудь уже делал опыт, чтобы сделать это таким образом?

Спасибо, привычка

1 Ответ

0 голосов
/ 09 ноября 2018

Нет API для перемещения документа, который был возвращен вам браузером документов после того, как пользователь выбрал его. Вы должны сообщить об ошибке в Apple, чтобы получить ее.

Если это внутри вашего контейнера iCloud, вы можете использовать права доступа iCloud и -[NSFileManager URLForUbiquityContainerIdentifier:], чтобы получить доступ к песочнице для вашего контейнера и делать все, что вы хотите внутри с NSFileManager; но это не сработает в iCloud за пределами вашего контейнера или других файловых провайдеров (Dropbox ...).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...