Протокол POP3 задокументирован в RFC 1939 - Протокол почтового отделения . Он не поддерживает концепцию папок.
На самом деле они упоминают в разделе 8:
Конечно, другие возможности IMAP, такие как опрос существующего соединения для вновь прибывших
сообщения и поддерживающие несколько папок на сервере, не являются
присутствует в POP3.
IMAP, с другой стороны, делает, и, вероятно, то, что вы ищете. Это хорошо задокументировано в http://www.faqs.org/rfcs/rfc3501.html Команда в IMAP для выбора папки называется «SELECT». Протокол выглядит так:
C: A142 SELECT INBOX
S: * 172 EXISTS
S: * 1 RECENT
S: * OK [UNSEEN 12] Message 12 is first unseen
S: * OK [UIDVALIDITY 3857529045] UIDs valid
S: * OK [UIDNEXT 4392] Predicted next UID
S: * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
S: * OK [PERMANENTFLAGS (\Deleted \Seen \*)] Limited
S: A142 OK [READ-WRITE] SELECT completed
Если вы делаете это как интеллектуальное упражнение, вам нужно будет переписать свой сетевой код для реализации IMAP вместо POP. Однако, если вы делаете это как часть коммерческого endevaur, я бы рекомендовал не писать почтовый клиент с нуля - это решенная проблема с большим количеством свободно доступных источников. Возможно, вы захотите взглянуть на UW-IMAP инструментарий , бесплатную библиотеку C или VMIME Библиотека C ++. Оба должны иметь возможность работать на платформе iOS без особых хлопот.