我正在使用javamail api来阅读gmail。一切正常,但是对文件夹getNewMessageCount()
的调用总是返回0。
部分代码:
folder = folder.getFolder("Inbox");
// try to open read/write and if that fails try read-only
try {
folder.open(Folder.READ_WRITE);
} catch (MessagingException ex) {
folder.open(Folder.READ_ONLY);
}
int totalMessages = folder.getMessageCount();
if (totalMessages == 0) {
System.out.println("Empty folder");
folder.close(false);
store.close();
}
int newMessages = folder.getNewMessageCount();
System.out.println("Total messages = " + totalMessages);
System.out.println("New messages = " + newMessages);
System.out.println("-------------------------------");
有没有人遇到过类似的问题?
更新
我尝试了另一个IMAP服务器,它给出了正确的号码。这似乎是gmail服务器的一个独特问题。
谢谢!
答案 0 :(得分:1)
如图所示: https://mail.google.com/support/bin/answer.py?answer=78761
“目前不支持以下功能: \最近的消息标志。“
由于NewMessageCount()方法使用RECENT标记对消息进行计数,因此它不会(仍)在Gmail服务器上找到任何此类消息(因此始终返回值0)。