#ios #swift #file
#iOS #swift #файл
Вопрос:
Я работаю над приложением для iOS, которое взаимодействует со службой, позволяющей пользователю загружать произвольные файлы. Затем они могут загружать эти файлы, и они должны иметь возможность их просматривать.
Я не могу найти API, который позволяет мне взять файл (либо по пути, URL, либо просто необработанные байты) и открыть его. В других приложениях при выполнении подобных операций отображается меню, которое позволяет мне выбрать приложение для просмотра файла. Как мне вызвать это меню?
Комментарии:
1. Похоже, вам нужна какая-то концепция «браузера документов». Это может сработать для ваших нужд: developer.apple.com/documentation/uikit/view_controllers /…
2. developer.apple.com/documentation/uikit/…
3. Браузер / средство выбора документов предназначено для выбора доступных документов внутри и вне контейнера приложения. Но в вопросе говорится, что они хотят показать меню, которое можно использовать для открытия файла в приложениях, поддерживающих такие файлы. UIActivityViewController делает именно это.
Ответ №1:
В итоге я смог сделать это с помощью UIDocumentInteractionController. Вы просто даете ему URL локального файла, и он отображает предварительный просмотр. Он может обрабатывать множество различных типов файлов и поставляется с меню общего доступа из коробки.
Ответ №2:
Если вы хотите предоставить опции для открытия файла с помощью других приложений / служб, вы можете использовать UIActivityViewController . Вам нужно будет представить его как всплывающее окно на iPad.
let menu = UIActivityViewController(activityItems: [fileURL], applicationActivities: nil)
self.present(menu, animated: true, completion: nil)