メールを受信したら、受信トレイを開いてメッセージを取得します。どのように私は以前のメッセージの配列にそれらを比較することができます、私はすでに私がそれらを読んだことを知っている?Java Mail:新しいメールを認識する方法
Properties properties = new Properties();
properties.put("mail.imaps.host", host);
properties.put("mail.imaps.port", "993");
Session emailSession = Session.getDefaultInstance(properties);
//2) create the POP3 store object and connect with the pop server
Store emailStore = emailSession.getStore("imaps");
emailStore.connect(user,pw);
//3) create the folder object and open it
Folder emailFolder = emailStore.getFolder("INBOX");
emailFolder.open(Folder.READ_ONLY);
Message[] messages = emailFolder.getMessages();
は、前のメッセージを保存する必要があることを確認していますか?受信トレイからのメッセージをイベントとして読み込みます。だから、あなたはいつも新しいメッセージを読んだ後、同じメッセージを2回読むことはできません。 –
よく私のアプリはメールの一部を表示します。私はそのリストからメールを削除する場合、私はフォルダをリフレッシュするときに再表示したくありませんが、私はすべてのメールを再度取得します。 もちろん、date、from、subjectなどを比較することはできますが、前回受信したメッセージにすでにメッセージが含まれているかどうかを確認する方法はありますか? – Ginso