所以我下载了 skpsmtpmessage pod 并将其安装到我的项目中。我在项目中有一个名为 MailSender 的文件,如下所示:
import Foundation
import skpsmtpmessage
class MailSender: NSObject, SKPSMTPMessageDelegate {
static let shared = MailSender()
func sendEmail() {
let message = SKPSMTPMessage()
message.relayHost = "smtp.gmail.com"
message.login = "myemail@gmail.com"
message.pass = "password"
message.requiresAuth = true
message.wantsSecure = true
message.relayPorts = [587]
message.fromEmail = "myemail@gmail.com"
message.toEmail = "recipientemail@gmail.com"
message.subject = "subject"
let messagePart = [kSKPSMTPPartContentTypeKey: "text/plain; charset=UTF-8", kSKPSMTPPartMessageKey: "body of email"]
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!")
}
}
在 ContentView 中,我有一个如下所示的按钮:
Button("click me") {
MailSender.shared.sendEmail()
}
当我运行模拟器并单击 ContentView 中的按钮时,我会在输出中收到一堆“***停止看门狗 ***”消息,然后是一些附加消息,上面写着“S:250-smtp.gmail.com 在您的服务,[我的 IP 地址]”,然后有一条消息说“S:535-5.7.8 用户名和密码不被接受。了解更多信息”,但我知道我提供的发件人电子邮件和密码是正确(这是我项目版本中的个人电子邮件信息)。任何帮助将不胜感激。