WinRT批量发送电子邮件

时间:2013-01-16 08:34:41

标签: windows-runtime

我正在尝试使用

在App Store应用中发送一组电子邮件
var mail = new Uri("mailto:test@somedomain.com"); 
await Windows.System.Launcher.LaunchUriAsync(mail);

电子邮件客户端启动但仅显示最后一封电子邮件。我真的需要将电子邮件“排队”到客户端。这可能吗?

有人建议使用股份合约,但我想我可能要提示用户分享每封电子邮件?

注意:我正在向多个接收者发送多封电子邮件,而不是向多个接收者发送电子邮件。

1 个答案:

答案 0 :(得分:1)

如果您想从Windows应用商店应用发送一批电子邮件,最好的办法是为此创建一个网络服务,并使用您创建这些电子邮件所需的所有数据从您的应用中调用它。

您可以通过多种方式直接从用户设备发送电子邮件,但除非这些是用户希望以交互方式发送的一封电子邮件,否则它们都有缺点:

  • 建议的方式是使用共享合同,但在这种情况下,用户必须自己选择收件人,并且您不会知道他是否实际发送了电子邮件。甚至更多:用户可以选择不同的共享目标,例如发布推文而不是发送电子邮件。你无法控制。

  • 您可以尝试启动mailto uri,但这很大程度上取决于用户为此协议选择的默认应用程序。它可能会打开邮件客户端,它可能会打开浏览器,或者它可能根本不起作用。当然,您仍然不知道用户是否会实际发送电子邮件。再一次,你无法控制。

  • 第三个选项是直接从您的应用程序以编程方式发送电子邮件,无需用户干预。没有可用的API。即使您自己实施协议,您仍然需要用户设置SMTP设置。强烈建议不要这样做,这可能会阻止您的应用程序通过认证。