【问题标题】:Send email without GUI [closed]在没有 GUI 的情况下发送电子邮件 [关闭]
【发布时间】:2012-01-06 15:42:32
【问题描述】:

是否有任何框架可以让我在不通过 GUI 的情况下发送电子邮件?

【问题讨论】:

  • 您需要提供有关您所面临问题的更多信息。
  • 很清楚我想在不显示ui的情况下发送电子邮件...我知道使用Apple mfmessage框架并这样做会被拒绝
  • 您会在此处找到关于已接受答案的精彩代码示例以发送后台电子邮件:stackoverflow.com/questions/6284599/…

标签: objective-c ios cocoa-touch email


【解决方案1】:

将this 框架添加到您的项目中,然后使用我的 Swift 类:

class EmailSender : SKPSMTPMessageDelegate {

    private init() {}

    static let sharedInstance = EmailSender();

    func sendEmail(email : String, subject : String, message : String) {
        let EMAIL_FROM = "test@gmail.com";
        let EMAIL_PASS = "TestPassword";
        let SMTP_SERVER = "smtp.gmail.com";

        let EMAIL_TO   = email;

        let emailMessage = SKPSMTPMessage();
        emailMessage.delegate = self;
        emailMessage.fromEmail = EMAIL_FROM;
        emailMessage.toEmail = EMAIL_TO;
        emailMessage.relayHost = SMTP_SERVER;
        emailMessage.requiresAuth = true;
        emailMessage.login = EMAIL_FROM;
        emailMessage.pass = EMAIL_PASS;
        emailMessage.subject = subject;

        emailMessage.wantsSecure = true;

        let plainMsg = [
            kSKPSMTPPartContentTypeKey : "text/plain",
            kSKPSMTPPartMessageKey : message,
            kSKPSMTPPartContentTransferEncodingKey : "8bit"
        ];

        emailMessage.parts = [plainMsg];
        emailMessage.send();
    }

    //MARK SKPSMTPMessageDelegate

    @objc func messageSent(_ message: SKPSMTPMessage!) {

    }

    @objc func messageFailed(_ message: SKPSMTPMessage!, error: Error!) {

    }

}

【讨论】:

    【解决方案2】:

    您应该查看 SKPSMTPMessage 框架。这允许您在后台发送电子邮件。 http://code.google.com/p/skpsmtpmessage/ 目前还不能这样做,除非您围绕 MFMailComposeViewController 编写代码,这可能会导致您的应用被商店拒绝(iOS5.0)

    【讨论】:

      【解决方案3】:

      如果您不需要从 iPhone 用户邮件应用程序发送电子邮件,您可以将操作卸载到服务器并让服务器代表用户发送邮件。

      唯一的问题是您可能会遇到垃圾邮件问题,具体取决于您使用的服务(Mail Chimp 等...)。

      【讨论】:

        猜你喜欢
        • 2011-06-06
        • 2015-01-03
        • 2011-10-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-05
        • 1970-01-01
        • 2015-12-12
        相关资源
        最近更新 更多