在MailCore2中提取邮件的问题

时间:2019-04-30 12:35:19

标签: objective-c mailcore2

我正在使用iOS(目标C)中的Mail Core 2,能够成功提取电子邮件。但是我遇到的问题很少,我停下来了。

我正在尝试找出几种情况,以下是这些情况,

  1. 我第一次启动应用程序时,“邮件收件箱”中有6000封电子邮件,已提取1000封电子邮件并存储在本地数据库中。现在,我将在移动设备中关闭我的应用程序。

    第二次,我将再次在手机中打开我的应用程序。在这里我有几个疑问, 由于我已经下载了1000封电子邮件,因此我将尝试下载剩余的电子邮件(5000)。

    但是,如果对这1000封电子邮件进行了任何更改,我怎么知道,如何检测更改/删除了哪些电子邮件内容?

    我是否需要再次下载所有电子邮件,并且必须与MailCore响应电子邮件交叉检查Local DB中的每封电子邮件。

  2. 我将使我的应用程序处于空闲状态,我如何知道是否收到任何新电子邮件。在这里,我尝试使用MCOIMAPIdleOpeartion,但是我无法获取任何回调,因此它阻止了fetchMessagesMethos ,如果我使用MCOIMAPIdleOperation,则无法获取消息。下面是我正在使用的代码

    session = [[MCOIMAPSession alloc]init];
    session.hostname = @"imap.gmail.com";
    session.username = userName;
    session.password = pwd;
    session.port = 993;
    session.authType = MCOAuthTypeSASLPlain;
    session.connectionType = MCOConnectionTypeTLS;
    
    NSString *valueToSave = session.username;
    
    MCOIMAPIdleOperation *idleOperation = [session idleOperationWithFolder:@"INBOX" lastKnownUID:0];
    
    self.idleOperation = idleOperation;
    [idleOperation start:[self idleHandler]];
    

在上述lastKnowUID代码中,我将值硬编码为'0',但我必须是动态的。无论如何,我会让它充满活力。

结论:我无法找到下载电子邮件时应遵循的体系结构,以及当应用程序处于空闲状态时如何获取新电子邮件。

0 个答案:

没有答案