расширение файла не отображается в имени файла при экспорте файла в iCloud Drive через UIActivityViewController? - PullRequest
0 голосов
/ 09 января 2019

Я использую UIActivityViewController для экспорта файлов RTF из моего приложения в iCloud Drive с помощью новой функции File App в iOS11.

Соответствующий код выглядит так:

struct MyFileObj {
    var name: String = "file10"
    var rtfString: String
    var rtfURL: URL {
    return folderURL.appendingPathComponent(name).appendingPathExtension("rtf")
}
...
...
...
func exportToRTFURL() -> URL? {
    let data = rtfString.data(using: .utf8)!

    do {
      try data.write(to: rtfURL)
    } catch {
      return nil
    }     
    return rtfURL
}

}

Class MYVC: {
...
...
...
func presentShareUI(_ shareUrls: [URL], sender: Any?) {
    let vc = UIActivityViewController(activityItems: shareUrls, applicationActivities: nil)
    vc.popoverPresentationController?.permittedArrowDirections = [.right, .left]
    vc.popoverPresentationController?.sourceView = sourceView
    vc.popoverPresentationController?.sourceRect = CGRect(x: sourceView.frame.width/2, y: sourceView.frame.height / 2, width: 0, height: 0)
    vc.preferredContentSize = CGSize(width: 100, height: 100)

    present(vc, animated: true) {
        self.selectBtn.isEnabled = true
        self.fileActionBarBtnItems.forEach { $0.isEnabled = true }
    }

}

}

при выполнении задания экспорта код выглядит следующим образом:

let myFileObjc = MyFileObj()
let shareURLs = [myFileObjc.exportToRTFURL()!]
self.presentShareUI(shareURLs, sender: nil)

пока все работает нормально, и имя файла, и его расширение ".rtf" отображаются в пользовательском интерфейсе:

Однако, когда я на самом деле добавил его в iCloud Drive, расширение типа файла "rtf" исчезло:

Более странное поведение моего кода состоит в том, что когда я нажимаю использовать AirDrop для совместного использования, файл появляется в папке загрузки моей MBP с требуемым расширением ".rtf".

Как сделать так, чтобы расширение ".rtf" появлялось также при экспорте файла в iCloud Drive?

Любая помощь будет признательна, спасибо заранее.

...