У меня есть почтовый аккаунт на сервере хоста в Бразилии (uol.com.br). Эта учетная запись для тестов, в почтовом ящике 7.000 сообщений. Когда я подключаюсь по почте java и setDebug (true), сообщения не возвращаются и показывают это сообщение:
03-22 14:44:07.305: I/System.out(5524): A1 OK User logged in
03-22 14:44:07.320: I/System.out(5524): A2 CAPABILITY
03-22 14:44:07.435: I/System.out(5524): * CAPABILITY IMAP4 IMAP4rev1 QUOTA UIDPLUS NO_ATOMIC_RENAME UNSELECT CHILDREN MULTIAPPEND BINARY SORT
03-22 14:44:07.435: I/System.out(5524): A2 OK Completed
03-22 14:44:07.500: I/System.out(5524): A3 LIST "" "%"
03-22 14:44:07.835: I/System.out(5524): * LIST (\HasNoChildren) "." "INBOX"
03-22 14:44:07.850: I/System.out(5524): * LIST (\HasNoChildren) "." "Quarentena"
03-22 14:44:07.870: I/System.out(5524): * LIST (\HasNoChildren) "." "Drafts"
03-22 14:44:07.885: I/System.out(5524): * LIST (\HasNoChildren) "." "Sent Messages"
03-22 14:44:07.925: I/System.out(5524): * LIST (\HasNoChildren) "." "Deleted Messages"
03-22 14:44:07.950: I/System.out(5524): A3 OK Completed (0.000 secs 6 calls)
03-22 14:44:07.990: I/System.out(5524): DEBUG: connection available -- size: 1
03-22 14:44:07.995: I/System.out(5524): A4 SELECT INBOX
03-22 14:44:08.130: I/System.out(5524): * FLAGS (\Answered \Flagged \Draft \Deleted \Seen)
03-22 14:44:08.145: I/System.out(5524): * OK [PERMANENTFLAGS (\Answered \Flagged \Draft \Deleted \Seen \*)]
03-22 14:44:08.160: I/System.out(5524): * 7245 EXISTS
03-22 14:44:08.170: I/System.out(5524): * 1 RECENT
03-22 14:44:08.180: I/System.out(5524): * OK [UNSEEN 7243]
03-22 14:44:08.190: I/System.out(5524): * OK [UIDVALIDITY 1208433603]
03-22 14:44:08.235: I/System.out(5524): * OK [UIDNEXT 10125]
03-22 14:44:08.235: I/System.out(5524): A4 OK [READ-WRITE] Completed
03-22 14:44:21.555: I/System.out(5524): A5 SEARCH UNSEEN ALL
03-22 14:44:23.910: I/System.out(5524): A5 BAD Unsupported command.
Это часть кода для установки флага. В gmail этот код подходит для 100 сообщений в папке входящих
public Message[] getInboxMessages() {
Message[] messages = null;
try {
Flags f1 = new Flags(Flags.Flag.SEEN);
FlagTerm notseen = new FlagTerm(f1, false);
messages = mInboxFolder.search(notseen);
} catch (NoSuchProviderException e) {
Log.w(TAG, e.getMessage());
} catch (MessagingException e) {
Log.w(TAG, e.getMessage());
}
return messages;
}
1 ответ
Сервер сломан. Похоже, он не поддерживает протокол IMAP должным образом. Сообщите об ошибке поставщику сервера.
Если вам нужно обойти ошибку сервера, вам следует избегать использования этой команды "search". Вы можете получить все сообщения и просто пропустить те, которые отмечены SEEN.
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.