Есть ли библиотека "SKPSMTPMessage" для Swift?
Есть ли какая-либо библиотека SMPSKMPMessage для использования в Swift? ранее я использовал этот урок, который находится в цели - c. Я хочу отправить письмо в фоновом режиме, используя Swift.
2 ответа
Решение
Я не знаю какой-либо библиотеки для отправки электронной почты в Swift, но вы определенно можете использовать ту, которая описана в руководстве Objective-C, в вашем приложении Swift. Все библиотеки Objective C совместимы с кодом Swift: просто используйте bridging header
,
Просто интегрируйте skpsmtpmessage с какао-бобами, добавив:
pod 'skpsmtpmessage'
на ваш Podfile, а затем вот как вы отправляете письмо из кода:
import skpsmtpmessage
class MailSender: NSObject, SKPSMTPMessageDelegate {
static let shared = MailSender()
func sendEmail(subject: String, body: String) {
let message = SKPSMTPMessage()
message.relayHost = "smtp.gmail.com"
message.login = "login@gmail.com"
message.pass = "password"
message.requiresAuth = true
message.wantsSecure = true
message.relayPorts = [587]
message.fromEmail = "login@gmail.com"
message.toEmail = "to@gmail.com"
message.subject = subject
let messagePart = [kSKPSMTPPartContentTypeKey: "text/plain; charset=UTF-8", kSKPSMTPPartMessageKey: body]
message.parts = [messagePart]
message.delegate = self
message.send()
}
func messageSent(_ message: SKPSMTPMessage!) {
print("Successfully sent email!")
}
func messageFailed(_ message: SKPSMTPMessage!, error: Error!) {
print("Sending email failed!")
}
}