Чтение файлов из других приложений, которые совместно используют папку документов, без UIDocumentBrowserViewController
Мне нужна какая-то функция обмена файлами между двумя независимыми приложениями (не могу использовать AppGroup или что-то в этом роде). App1 должен отправить App2 н документов (п может быть сотни), App2 должны разработать эти документы и отправить обратно в App1 уточненной документы. Я хотел бы минимального взаимодействия с пользователем (поэтому я бы не стал использовать UIActivityViewController или аналогичные решения)
К настоящему времени я использую настраиваемый URL-адрес, чтобы приложения могли вызывать себя, а общий UIPasteboard - для обмена документами. Но поскольку я не могу контролировать количество или размер документов, меня беспокоит, что это решение будет ненадежным.
Итак, я смотрю на функции совместного использования, представленные в iOS 11, и вижу, что с помощью
UISupportsDocumentBrowser = TRUE
в plist App1, я могу поделиться всем каталогом документов с приложением Files или с любым приложением на основе документов.
Но я не могу понять, могу ли я получить файлы из папки документов App1 с помощью какого-то API, без использования UIDocumentBrowserViewController.
Что-то типа:
- Набор приложений 1
UISupportsDocumentBrowser,LSSupportsOpeningDocumentsInPlace,UIFileSharingEnabled = true
и поделитесь своей папкой с документами - App1 вызывает пользовательский URL-адрес App2 со списком URL-адресов файлов, находящихся внутри папки документов App1.
- App2 запускается и получает файлы, считываемые с этих URL-адресов (которые доступны, поскольку App1 совместно использует свою папку с документами)
Кто-нибудь знает, возможно ли это, и есть ли для этого API?
Я уже пробовал установить UISupportsDocumentBrowser,LSSupportsOpeningDocumentsInPlace,UIFileSharingEnabled = TRUE
в App1 и просто попытался из App2 прочитать URL-адрес файла из папки документов App1 с помощью Data(contentsOf: url)
, но это не работает (нет прав на чтение)
Спасибо всем!