2011-05-24 107 views
3

我在这件事上做了相当多的研究,而且似乎无法为我的问题找到一个可靠的解决方案。在Mac上使用Java以编程方式发送电子邮件(通过Mac邮件客户端)

我正在开发一个Java客户端应用程序,该应用程序允许用户通过以列表格式获取它们并允许用户选择一个子集/全部并单击一个按钮来从Mac地址簿中导入他们的联系人,向这些用户发出“邀请”。

我能够使用Rococoa Java框架获取联系人,但我不确定如何发送电子邮件或甚至可能。我意识到这有一些安全问题,但是我可以在Outlook的PC上完成同样的任务。

看来,我可能不得不从我的Java调用一个Applescript,手动打开Mac Mail Client并使用其默认邮件帐户设置发送电子邮件。

我可能完全离开这里......我应该甚至打扰通过用户的默认邮件帐户发送邮件吗?我想避免使用不同的邮件服务器,以避免垃圾邮件等。

任何帮助将不胜感激,谢谢你的时间。

  • 马特

回答

2

下面是使用邮件一个AppleScript ...

set emailSender to "[email protected]>" 
set emailTo to "[email protected]" 
set theSubject to "The subject of the mail" 
set theContent to "message body" 

tell application "Mail" 
    set newMessage to make new outgoing message with properties {sender:emailSender, subject:theSubject, content:theContent, visible:true} 
    tell newMessage 
     make new to recipient at end of to recipients with properties {address:emailTo} 
     send 
    end tell 
end tell 

另一种选择,如果你知道SMTP信息,是使用Python。我制作了一个可以使用的命令行程序。找到它here。有一些示例代码可以在网页上使用它。

+0

我会使用给定的AppleScript!对于用户来说,收到发送文件夹中“发自他”的所有邮件是非常好的。毕竟有些人可能会“回复”他,所以可以将答复与他的邀请联系起来。 – 2011-08-19 15:18:15

相关问题