Поставщик хранилища: невозможно перечислить средства выбора документов в режиме экспорта/перемещения, начиная с бета-версии 4.

После обновления до iOS8 beta 4, когда я хочу настроить UIDocumentPickerViewController для выбора средства выбора документов, такого как iCloud, всегда отображается сообщение «Нет доступных местоположений». и просит меня включить «Документы и данные iCloud Drive».

Импорт и открытие по-прежнему работают нормально. Я вижу, что все средства выбора документов включают iCloud и мое собственное средство выбора в меню. Я почти уверен, что включил iCloud Drive и разрешил всем приложениям использовать «Документ и данные» в разделе «Общие»> «Настройка iCloud».

Как ни странно, эта проблема не возникнет на симуляторе, а только на устройстве. До beta4 я никогда не видел этого ни на симуляторе, ни на устройстве.

Я проверил кодовый знак iCloud как в хост-приложении, так и в моем приложении для выбора/хранилища документов, но это ничего не помогает. Он не выдает никаких сообщений об ошибках или предупреждений. Я ничего не знаю об этом деле.

Я использую NewBox в качестве основного приложения, предоставленного Apple WWDC2014: https://developer.apple.com/wwdc/resources/sample-code/

Я также разместил эту проблему на форуме разработчиков Apple несколько дней назад, но не получил ответа. У кого тоже такая же проблема? Большое спасибо.

Снимок: http://i.imgur.com/s0rxPEV.png


person user3876330    schedule 30.07.2014    source источник


Ответы (1)


Да, я тоже заметил такое поведение и нашел исправление.

Для приложения NewBox проблема, по-видимому, связана с совместным использованием разрешений для конкретного рассматриваемого файла, а именно TestUIDocument_0.txt в комплекте приложения.

Jul 31 09:54:36 iPad kernel[0] <Notice>: Sandbox: NewBox(158) deny file-issue-extension /private/var/mobile/Containers/Bundle/Application/<GUID>/NewBox.app/TestUIDocument_0.txt
Jul 31 09:54:36 iPad kernel[0] <Notice>: Sandbox: com.apple.UIKit.(161) deny file-read-metadata /private/var/mobile/Containers/Bundle/Application/<GUID>/NewBox.app/TestUIDocument_0.txt

Я исправил проблему, скопировав файл в каталог документов и установив self.documentURL в это место.

Не знаю, является ли это функцией или ошибкой — для параметра перемещения я вижу, что файлы в комплекте приложений не могут быть перемещены, поэтому имеет смысл запретить перемещение из пакета приложений.

Но экспорт, насколько я понимаю, это просто операция копирования, поэтому не знаю, почему это запрещено из пакета приложений, но из каталога документов.

person Vivek    schedule 31.07.2014
comment
Спасибо, это основная причина. Требования к разрешению исходного файла в бета-версии 4 кажутся другими, но текущий пример кода не обновляется. - person user3876330; 01.08.2014
comment
Не могли бы вы помочь с stackoverflow.com/questions/30613645/ - person Durgaprasad; 08.06.2015