0

我使用 JavaMail API 为我的 Android 手机制作了一个电子邮件客户端。如果它是 html 邮件,我不知道如何获取电子邮件内容。我正在使用以下代码来获取内容:

public void printMessage(int messageNo) throws Exception {
    Log.i("MsgNo", "Getting message number: " + messageNo);

    Message m = null;

    try {
        m = folder.getMessage(messageNo);
        dumpPart(m);
    } catch (IndexOutOfBoundsException iex) {
        Log.i("Out of Range","Message number out of range");
    }
}

public static void dumpPart(Part p) throws Exception {

    if (p instanceof Message)
        dumpEnvelope((Message)p);
    Object content = p.getContent();
    Log.i("dumpPart",(String) content);
    String ct = p.getContentType();
    try {
        pr("CONTENT-TYPE: " + (new ContentType(ct)).toString());
        Log.i("MsgNo", "Content Type");
    } catch (ParseException pex) {
        pr("BAD CONTENT-TYPE: " + ct);
        Log.i("MsgNo", "Bad Content Type");

    }


     //* Using isMimeType to determine the content type avoids
   //  * fetching the actual content data until we need it.

    if (p.isMimeType("text/plain")) {
        pr("This is plain text");
        pr("---------------------------");
        Log.i("Text", (String)p.getContent());       
    } else {
         Log.i("MsgNo", "Just a Separator");
        // just a separator
        pr("---------------------------");

    }
}

在 Logcat 中,我得到了 dumpenvelope((Message)p); 的返回值。,但在那之后什么都没有。

有人知道该怎么做吗?

4

1 回答 1

0

有没有抛出异常?

您是否启用调试并检查协议跟踪以查看可能失败的原因?

你在使用 IMAP 吗?

看起来您的程序是由名为 msgshow.java 的 JavaMail 示例程序的片段创建的,您找到完整的原始示例程序了吗?

这个 JavaMail FAQ 条目也可能有帮助。

于 2013-04-14T02:15:10.117 回答