1

そこで、skpsmtpmessage ポッドをダウンロードしてプロジェクトにインストールしました。プロジェクトに 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 at your service, [My IP Address]」というメッセージが表示され、「S: 535-5.7.8 Username and Password not Accepted. Learn more at」というメッセージが表示されますが、私が提供している差出人の電子メールとパスワードは正しい (私のバージョンのプロジェクトでの私の個人的な電子メール情報です)。どんな助けでも大歓迎です。

4

1 に答える 1