所以我正在处理一个 SwiftUI 项目,我使用 cocoapods 导入了 skpsmtpmessage。我将应用程序上传到几个人的设备,但是当他们尝试使用 sendEmail() 函数时,它对他们不起作用,因为 Gmail 阻止发送邮件,因为它认为登录来自未经授权的帐户 - 是有什么办法可以防止这种情况吗?它适用于我上传到的设备。我想要做的就是获得某种电子邮件反馈(因此在 Gmal 方面,它应该只显示为我发给我自己的电子邮件,正文是用户输入的任何内容)。安全性较低的应用访问已开启。包含以下函数的结构体符合 SKPSMTPMessageDelegate:
func sendEmail(subject: String, body: String) {
let message = SKPSMTPMessage()
message.relayHost = "smtp.gmail.com"
message.login = "account@gmail.com"
message.pass = "password"
message.requiresAuth = true
message.wantsSecure = true
message.relayPorts = [587]
message.fromEmail = "account@gmail.com"
message.toEmail = "account@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!")
}