message.setFlagFlags.Flag.SEEN,true;正常工作并将邮件标记为已读,但如果我在Gmail中打开邮件,则不会更新

问题描述

代码运行正常,正在读取邮件,我想它会将邮件标记为已读,因为当我第二次运行它时,它没有读取(不打印内容),但是当我打开Gmail时,它仍然显示邮件为未读。

Folder folderInBox = store.getFolder("INBox");              
                folderInBox.open(Folder.READ_WRITE);
                Flags seen = new Flags(Flags.Flag.SEEN);
                FlagTerm unseenFlagTerm = new FlagTerm(seen,false);
                Message[] foundMessages = folderInBox.search(unseenFlagTerm);
                for (int i = 0; i < foundMessages.length; i++) {
                    Message message = foundMessages[i];
                    if(message.getSubject().contains(keyword)&&message.getSentDate().after(maxDate)) {
                        String subject = message.getSubject();    
                        String result = "";
                        if (message.isMimeType("text/plain")) {
                            result = message.getContent().toString();
                        } else if (message.isMimeType("multipart/*")) {
                            MimeMultipart mimeMultipart = (MimeMultipart) message.getContent();
                            result = getTextFromMimeMultipart(mimeMultipart);
                            result=result.toString();                        
                        }                       
                        System.out.println("Content message #" + i + ": " + result);
                        **message.setFlag(Flags.Flag.SEEN,true);**


                   

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)