Я реализовал AppGroup в своем приложении для подготовки к обмену данными с другим приложением. Я успешно переместил файлы в эту группу приложений из каталога документов приложения по умолчанию.
FileManager.default.containerURL(forSecurityApplicationGroupIdentifier: "group.com.xxx.mydata")! as NSURL
Теперь я хотел бы выбрать файлы в этом контейнере, используя UIDocumentPickerViewController. В iOS 13 я должен иметь возможность указать, в каком каталоге запускается средство выбора документов. Мой DocumentPicker выглядит следующим образом:
@IBAction func fileAction(_ sender: UIButton)
{
// open a document picker, select a file
let importFileMenu = UIDocumentPickerViewController(documentTypes: ["public.data"],
in: UIDocumentPickerMode.import)
importFileMenu.delegate = self
if #available(iOS 13.0, *) {
print("File iOS 13+")
importFileMenu.directoryURL = FileManager.default.containerURL(
forSecurityApplicationGroupIdentifier: "group.com.xxx.mydata")!
} else {
// Fallback on earlier versions
print("File iOS <=12")
}
importFileMenu.modalPresentationStyle = .formSheet
self.present(importFileMenu, animated: true, completion: nil)
}
Когда я запускаю приложение, оно работает так же, как и до iOS13, открывая вкаталог документов приложения по умолчанию, и группа приложений не отображается как возможность выбора. В операторе печати отображается «Файл iOS 13 +».
Мне не хватает разрешений на чтение из этого контейнера, или я пропустил что-то еще? Спасибо!