2

我需要尽快从用户的 gmail 帐户中获取真实的新电子邮件。

有两个选项可以做到这一点:

1) 定期轮询服务器(可能是连续无延迟)并检查新消息。(不是理想的解决方案) 2)使用 IMAP IDLE。(由 gmail 支持)。这个解决方案看起来很有前途,也是最有效的。我试着那样做。找到支持 IDLE 的库。它是 S22.IMAP 邮件库。但问题是我发现了一些问题(或者是与 IDLE 相关的问题)。如果有几条消息同时到达,我不会每次都调用 OnNewMessage。只有当有 4-6 条消息到达时,我才会得到 2-3。

是 IDLE 相关的问题吗?每次使用 IDLE 获得 EXIST 时,我是否必须获取新消息?还是lib问题?

4

1 回答 1

1

我用错了方法。IMAP IDLE 是最好的方法。我只是忘记停止在新消息事件上闲置。它必须停止,检查新消息,然后允许应用程序进一步空闲。

于 2012-11-26T15:25:07.253 回答