Я пытаюсь поделиться файлом с UIActivityViewController. Однако файл хранится в виде двоичного атрибута объекта Core Data. Таким образом, расширение файла несколько потеряно, и меню действий не соответствует ему, он показывает пустой документ и делится файлом без расширения. В моем случае это pdf. Когда я делаю это из связанного файла с параметром URL, все хорошо, но я хочу использовать Core Data. И я хочу, чтобы он знал, что это pdf. Знаете ли вы какой-нибудь обходной путь?
func shareButton(destination: Data) {
let av = UIActivityViewController(activityItems: [destination], applicationActivities: nil)
UIApplication.shared.windows.first?.rootViewController?.present(av, animated: true, completion: nil)
}
[...]
if item.file != nil {
Button(action: {
withAnimation {
self.showShareSheet = true
//self.pdf = Bundle.main.url(forResource: self.item.identifier, withExtension: "pdf") //this one works fine as long as URL is required
self.shareButton(destination: self.item.file!)
}
}) {
Image(systemName: "square.and.arrow.up").frame(minWidth: 40)
.font(.headline)
.padding(.top, 10)
.padding(.trailing, 15)
.foregroundColor(.primary)
}
}