我能够从Java Mail Api访问电子邮件



我能够从此代码访问来自JavaMail API的(收件箱)电子邮件

     public Folder getMails() throws MessagingException {
    store = imapSession.getStore("imaps");
    store.connect(mailServer, account.username, account.password);
    inbox = store.getFolder("Inbox");
    inbox.open(Folder.READ_WRITE);
    Message[] result = inbox.getMessages();
    return inbox;
}

我现在可以在列表视图中显示主题我的问题是 1.如何在安卓中显示电子邮件内容正文。&2.我想访问雅虎邮件和Microsoft电子邮件等。我也可以通过JavaMail API访问这些电子邮件。我也看到了这封 K-9 邮件,但我无法导入它。

任何帮助将不胜感激,提前谢谢。

1 您可以使用 WebView 显示消息内容,因为它将自动为您呈现HTML,并且还将提供缩放功能。

2您可以从任何邮件服务器访问邮件,只需要正确的属性。
例如,在实时和热邮件的情况下,主机将被pop3.live.com,协议将pop3s,因为 MS 服务器不支持 IMAP。

另请注意:雅虎的免费版本不允许第三方服务访问消息。您只能访问来自雅虎的消息,如果使用他们的高级服务Yahoo! Plus。

  1. JavaMail 允许您访问邮件内容,包括纯文本和 html 内容。 如何显示内容是一个与JavaMail无关的GUI问题。
  2. JavaMail仅支持互联网标准协议,如POP3和IMAP。 您应该能够访问Yahoo和Microsoft服务器,如果它们配置为支持这些协议。
  3. 不要忘记阅读JavaMail常见问题解答。

尝试使用以下代码来获取邮件内容

private static String getMailContent(Multipart multipart) throws IOException, MessagingException{
    StringBuffer content = new StringBuffer();
    for (int x = 0; x < multipart.getCount(); x++) {
        BodyPart bodyPart = multipart.getBodyPart(x);
        String disposition = bodyPart.getDisposition();
        if (disposition != null && (disposition.equals(BodyPart.ATTACHMENT))) {
                // ................................
        } else {
            content.append(bodyPart.getContent());
        }
    }
    return content.toString();
}

最新更新