Это может быть по нескольким причинам:
1) Вполне возможно, что вы не скачивая достаточно информации о CTCoreMessage. При запросе на загрузку CTCoreMessages вы должны указать, какую информацию вы хотите, указав правильные атрибуты извлечения.
Например:
[core_folder messagesFromSequenceNumber:from to:to withFetchAttributes: CTFetchAttrEnvelope | CTFetchAttrBodyStructure]
должен заполнить информацию о вложениях.
При получении сообщения от IMAP команда будет точно определять, какую информацию он хочет.
вы можете увидеть, что они загружаются, позволяя MailCore Logging следующим образом:
MailcoreEnableLogging();
[core_folder messagesFromSequenceNumber:from to:to withFetchAttributes: CTFetchAttrEnvelope | CTFetchAttrBodyStructure];
MailcoreDisableLogging();
Вы увидите команды формата
<command number> <UID> <Command> (<requested structure>)
Я полагаю, вы увидите что-то вроде этого:
1 UID FETCH (ENVELOPE)
Вы должны убедиться, что внутри() либо BODY или BODY [2], либо RFC822 в качестве th ese будет содержать информацию о вложениях.
Когда вы видите, что на самом деле выбрано, вы можете read the RFC, если вы имеете дело с почтовым ящиком и IMAP, тогда это стоит инвестиций вовремя.
2) В противном случае, возможно, ваш CTCoreAccount и/или CTCoreFolder не подключены, тем самым предотвращая наличие CTCoreMessage действительной mailimapsession и невозможность загрузить вложения. Если атрибут внутри CTCoreMessage недоступен, libetpan должен загрузить его по запросу. Тот факт, что это не означает, что ваша учетная запись или папка могут быть недействительными или связанными.
Как я извлекаю конкретную почту из своей почты с помощью Mailcore..for например, отправляя параметры ссылки на конкретный объект, на адрес или даты bwt, подобные этому .. это возможно из MailCore. Пока я отказываюсь. эти два метода предназначены только для того, чтобы не указать все письма из Inbox, 1. [self.Folder_inbox messagesFromSequenceNumber: от 1 до: 0 withFetchAttributes: CTFetchAttrEnvelope | CTFetchAttrBodyStructure]; , 2. [Самостоятельно.Folder_inbox messagesFromUID: от 1 до: 0 withFetchAttributes: CTFetchAttrBodyStructure]; существует какой-либо конкретный метод для извлечения конкретной почты. пожалуйста, поделитесь своими идеями, это поможет мне –
Если вы хотите извлечь вложения из исходной выборки в CTCoreMessage, тогда вы должны установить «CTFetchAttrEnvelope | CTFetchAttrBodyStructure» в качестве атрибутов выборки. Ваш комментарий, кажется, предлагает другой вопрос полностью, а именно: «Как мне искать конкретное сообщение». Для этого вам было бы лучше спросить об этом как о отдельном вопросе здесь, так как это сложный ответ, совершенно не связанный с этим постом. – JConway
@ JConway ... спасибо человеку ... если у вас есть идея? пожалуйста, поделитесь .... как я могу найти конкретное сообщение с MailCore ...? –