Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> IOS

จะส่งไฟล์แนบในอีเมลโดยใช้ Swift ได้อย่างไร


ในการส่งอีเมลจากอุปกรณ์ iPhone ของเราโดยใช้แอปพลิเคชันของเรา เราจำเป็นต้องนำเข้ากรอบงาน MessageUI ของ iOS SDK หลังจากนำเข้ากรอบงานในแอปพลิเคชันของคุณแล้ว ให้ลากและวางปุ่มบนตัวควบคุมมุมมอง เพิ่มการทำงานว่างสำหรับปุ่มนั้น

เพิ่มโค้ดต่อไปนี้ในตัวควบคุมการดูของคุณ

funccomposeEmail(to email: String,subject: String,Body: String) {
   if( MFMailComposeViewController.canSendMail()) {
      letmailComposer = MFMailComposeViewController()
      mailComposer.mailComposeDelegate = self
      mailComposer.setToRecipients([email])
      mailComposer.setSubject(subject)
      mailComposer.setMessageBody(Body, isHTML: true)
      letpathPDF = "\(NSTemporaryDirectory())result.pdf"
      if let fileData = NSData(contentsOfFile: pathPDF) {
         mailComposer.addAttachmentData(fileData as Data, mimeType: "application/pdf", fileName: "result.pdf")
      }
      self.present(mailComposer, animated: true, completion: nil)
      } else {
         print("email is not supported")
      }
   }
   funcmailComposeController(_ didFinishWithcontroller:
   MFMailComposeViewController, didFinishWith result:
   MFMailComposeResult, error: Error?) {
      self.dismiss(animated: true, completion: nil)
   }
}

เรียกวิธีนี้ภายในการทำงานของปุ่มที่คุณเพิ่งสร้างขึ้น

@IBActionfuncactionButtonOne(_ sender: Any) {
composeEmail(to: "ashish@xy.com", subject: "Saying Hi", Body: "Hey there, hope you are doing well.")
}

เมื่อเราเรียกใช้โค้ดด้านบนและกดปุ่มที่เราเพิ่มเข้าไป เราจะได้ผลลัพธ์ดังต่อไปนี้

จะส่งไฟล์แนบในอีเมลโดยใช้ Swift ได้อย่างไร

มีข้อควรสังเกต -

  • ตรวจสอบให้แน่ใจว่าได้เพิ่มบัญชีอย่างน้อยหนึ่งบัญชีในแอปพลิเคชันอีเมลบน iPhone ของคุณ

  • ตรวจสอบให้แน่ใจว่าคุณมี pdf ที่จัดเก็บไว้ในที่อยู่ที่คุณต้องการอัปโหลด