【发布时间】:2013-11-13 16:21:04
【问题描述】:
是否可以通过单击按钮将使用我自己的电子邮件地址自动生成的电子邮件发送到我的另一个电子邮件地址?
我尝试使用MFMailComposeViewController,但出现了另一个视图。没有这个视图可以吗?
【问题讨论】:
-
查看与您相关的问题列表。之前已经介绍过好几次了。
是否可以通过单击按钮将使用我自己的电子邮件地址自动生成的电子邮件发送到我的另一个电子邮件地址?
我尝试使用MFMailComposeViewController,但出现了另一个视图。没有这个视图可以吗?
【问题讨论】:
您只能通过创建自己的服务器端邮件程序来做到这一点。单击按钮时,您必须发送包含所有所需数据(电子邮件地址、正文、主题等)的请求,服务器将发送邮件。
如果您想直接从应用程序发送 - MFMailComposeViewController 是唯一合法的方式
【讨论】:
MFMailComposeViewController的应用程序发送电子邮件是完全合法的。
默认情况下,在 iOS 中您只能使用 MFMailComposeViewController,它使用用户的邮件帐户。因此,您不能发送完全自动化的邮件消息(用户总是必须确认/取消)。
libMailCore 是一个很棒的 iOS 框架,它允许您在没有任何用户干预的情况下生成和发送邮件。在这种情况下,您将使用自己的服务器/凭据(因此不是用户邮件帐户)。 App Store 中有使用 mailcore 的应用程序,所以我猜它是合法的。
【讨论】:
MFMailComposeViewController.. 自己查看邮件核心的api docs,您会发现它们都是获取/下载邮件内容的方法.. 不是创建/发送它们
是的,有一种方法可以使用Swift-SMTP。
发送电子邮件 创建一个 Mail 对象并使用您的 SMTP 句柄发送它。要设置电子邮件的发件人和收件人,请使用 User 结构:
let drLight = Mail.User(name: "Dr. Light", email: "drlight@gmail.com")
let megaman = Mail.User(name: "Megaman", email: "megaman@gmail.com")
let mail = Mail(
from: drLight,
to: [megaman],
subject: "Humans and robots living together in harmony and equality.",
text: "That was my ultimate wish."
)
smtp.send(mail) { (error) in
if let error = error {
print(error)
}
}
【讨论】: