Я работаю над MFMailComposeViewController
в Swift 3.0 (Xcode 8.2.1) с XLS в качестве вложения. Я сохранил файл excel в каталоге Cache и вернул его для вложения в электронное письмо. (см. ниже код)Swift MFMailComposeViewController с приложением XLS, приложение не найдено
Когда я отлаживаю код, я вижу, что он печатает «Загруженные файлы.» означает, что есть данные, поступающие из песочницы (кеш). Не уверен, этот тип мим правильно "application/vnd.ms-excel"
?
К моему странному! Я не вижу почтовый ящик и приложение. Не могли бы вы помочь?
До сих пор, вот мой код:
import MessageUI
class ViewController:MFMailComposeViewControllerDelegate {
func shareFileViaEmail() {
if MFMailComposeViewController.canSendMail() {
let mailComposerVC = MFMailComposeViewController()
mailComposerVC.mailComposeDelegate = self
let paths: [Any] = NSSearchPathForDirectoriesInDomains(.cachesDirectory, .userDomainMask, true)
let documentsDirectory: String = paths[0] as! String
let dataPath: URL = URL(fileURLWithPath: documentsDirectory).appendingPathComponent("record.xls").absoluteURL
if let fileData = NSData(contentsOf: dataPath) {
print("File data loaded.")
mailComposerVC.addAttachmentData(fileData as Data, mimeType: "application/vnd.ms-excel", fileName: "Report")
}
mailComposerVC.setSubject("Report")
mailComposerVC.setMessageBody("Message body", isHTML: false)
self.present(mailComposerVC, animated: true, completion: nil)
}else{
print("Your device could not send e-mail. Please check e-mail configuration and try again.")
}
}
func mailComposeController(_ controller:MFMailComposeViewController, didFinishWith result:MFMailComposeResult, error:Error?) {
self.dismiss(animated: false, completion: nil)
}
}
Я вижу следующий вывод в устройстве: (Нет привязанности & Нет E-mail тела)
No Change, ты проверив этот код? –
Да, это работает для меня. что у вас есть расширение файла? – CST
Все еще не работает. Когда я проверил свою песочницу, у него есть файл excel, он также печатает «Загруженные файлы», но я не понимаю, почему он не прикрепляет файл к электронному письму. –