Чтение файлов из других приложений, которые совместно используют папку документов, без 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), но это не работает (нет прав на чтение)

Спасибо всем!

0 ответов

Другие вопросы по тегам