2011-08-28 92 views
0

我想在我的imap应用程序中同步gmail标签。 我正在使用全部邮件同步Gmail。 如果用户更改IMAP的标签,则在imap中同步一条消息之后。 它不会自动作为更新的消息。 我正在寻找同步gmail标签的最佳选项。用gmail同步标签的逻辑

我的想法是基于

  • 要么同步文件夹。
  • 从开始到当前阶段检查gmail中每封邮件的标签。

但我不认为这两个将是不错的选择。 什么是同步Gmail邮件标签的最佳选择?

回答

0

对我来说,下面的效果最好:

  1. 只有从“所有邮件”
  2. 对于那些标签需要更新,搜索它的Gmail消息ID的所有IMAP文件夹中的每封邮件读取消息(或线程ID)。您也可以一次对多个邮件执行此操作。
  3. 在文件夹中找到消息时,用文件夹名称标注。
0

第一:只使用“所有邮件”文件夹。 第二:它可以一次得到许多消息Gmail标签:

UID FETCH 1,2,3 (UID X-GM-LABELS) 

如果您使用的是.NET,你可以使用这个库(商业部分,我创建): http://www.limilabs.com/blog/get-gmail-labels-for-specified-messages

它应该是相当快,那么它是比较列表并使用+ X-GM-LABELS添加或使用-X-GM-LABELS删除标签的问题。