這可能有幾個原因:
1)這可能是你沒有下載有關CTCoreMessage足夠的信息。當提出下載CTCoreMessages的請求時,您必須通過指定正確的提取屬性來指定所需的信息。
例如:
[core_folder messagesFromSequenceNumber:from to:to withFetchAttributes: CTFetchAttrEnvelope | CTFetchAttrBodyStructure]
應填寫有關附件的信息。
從IMAP提取郵件時,該命令將精確指定它想要的信息。
你可以看到什麼,正在獲取啓用MailCore記錄如下:
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中作爲第ese將包含有關附件的信息。
當您看到實際提取的內容時,您可以使用read the RFC,如果您正在處理mailcore和IMAP,那麼它很值得您及時投資。
2)如果失敗,可能是您的CTCoreAccount和/或CTCoreFolder未連接,從而阻止CTCoreMessage具有有效的mailimapsession並且無法下載附件信息。如果CTCoreMessage中的屬性不可用,那麼libetpan應該根據請求下載它。事實並非表明您的帳戶或文件夾可能無效或無法連接。
我如何通過使用Mailcore來檢索郵件中的特定郵件...例如,將參數linke特定主題發送到地址或bwt日期,就像那個..它可能來自MailCore ..到目前爲止,我已經檢查過。這兩種方法只針對來自Inbox的所有郵件,不包括1. [self.Folder_inbox messagesFromSequenceNumber:1 to:0 withFetchAttributes:CTFetchAttrEnvelope | CTFetchAttrBodyStructure]; ,2。[自我。Folder_inbox messagesFromUID:1 to:0 withFetchAttributes:CTFetchAttrBodyStructure];有任何具體的方法來檢索特定的郵件。請分享你的想法它對我有幫助 – 2013-05-17 06:40:53
如果你想要從CTCoreMessage的初始化獲取附件,那麼你必須設置「CTFetchAttrEnvelope | CTFetchAttrBodyStructure」作爲獲取屬性。您的評論似乎完全提出了一個不同的問題,即「我如何搜索特定的消息」。對於這個問題,你最好把它當作這裏的一個單獨問題來討論,因爲它是一個與這篇文章完全無關的複雜答案。 – JConway 2013-05-21 10:25:05
@ JConway ...謝謝你......如果你有想法?請分享....我如何使用MailCore搜索特定消息...? – 2013-05-23 07:18:44