许多人开始在电脑或手机端使用第三方邮箱客户端,一个显而易见的原因是,主流的邮箱大多只提供了比较保守的设计方案。这里的设计包含了两层含义,最浅显的当然是邮箱本身的颜值与交互,而另一层次的设计,则是对使用者工作流的支持。

Google 就在 Gmail 的基础上,重新推出了 Inbox,无论是界面还是邮件的处理流,都采用了更大胆的设计。不过,大多数第三方邮箱,像 Spark、Newton(原 CloudMagic)、Airmail 等,都还是相对小众的工作室推出的作品。

它们被问到最多的问题可能就是这款客户端支持我的邮箱吗?为什么无法添加我的账号?在我本周日(3 月 26 日)关于 邮箱管理的 Live  中,目前被问到最多的一类问题就是:Airmail 为什么不能添加 Gmail?163 邮箱为什么用不了 Spark?

其实,要解决这些问题,只需要四个步骤来排查问题所在。不过,在那之前,我们先来科普一些小知识,可以帮你更好地「知其所以然」。

SMTP、POP 与 IMAP 都是什么?

这三个英文缩写可能对你来说并不陌生,不管是在邮箱的设置页面,还是在添加账号时,你可能都见过,但你不一定知道它们是什么意思。相类似的,你可能也见过 Exchange 协议,但今天我们不展开讲它。

如果你仔细想一想,不管是腾讯自家的 Foxmail,还是第三方邮箱客户端,甚至在 Gmail 的网页版上代收 QQ 邮件,不管你换哪一种方式,都可以顺利地收到邮件,难道是 QQ 邮箱接入了这一家又一家第三方吗?当然不是的,邮件作为互联网最古老的存在之一,其实是有非常标准的协议的,各方只要遵循了这些协议,就可以互通互联

抽象地来看,邮件无非就是收和发:

  • 发邮件:SMTP 全称是 Simple Mail Transfer Protocol,它制定了一套标准的发邮件协议,只要遵循 SMTP,你可以在网页版上发邮件,也可以在任何一个第三方客户端上发邮件;
  • 收邮件:POP(Post Office Protocol) 和 IMAP(Internet Message Access Protocol) 都是收邮件的协议。不过,IMAP 是更现代化的收邮件协议,尽管它其实已经有三十年的高龄了。两者的差异,从最简单的一个层面来看,可以理解成 POP 是单向的,而 IMAP 是双向的,也就是说 POP 只从你的邮件服务商那里拉取回邮件,之后你是读了删了,都和那封原始邮件无关了。而 IMAP 则会双向同步邮件的阅读状态、是否删除、是否移动等信息。除此之外,IMAP 还支持实时提醒、按需下载附件、向服务端发起邮件搜索等高级特性。

作为现在最主流的三种邮件收发协议,几乎所有的主流邮件服务商都支持它们,提供了「SMTP+POP」或「SMTP+IMAP」的方式,支持第三方客户端管理收发。而「SMTP+IMAP」几乎已经是现在主流的默认方案,你在使用第三方客户端添加账号时,如果是主流的邮件服务商,往往只需要输入账号密码,一切就都搞定了,其实在背后,客户端和你的邮件服务商,正是通过「SMTP+IMAP」这两个协议来互通互连的。

无法添加账号时,四步排查问题所在

现在,知道了邮件收发的一些基本原理,我们就可以逐步来排查,当出现添加账号失败时,背后的原因到底是什么。

第一步:检查你的邮箱是否开通了 IMAP 服务

这看起来可能有点傻,但的确,许多邮件服务商(例如网易)并不默认开通 IMAP 或 POP 协议,你需要前往邮箱的设置页面,手动开启。大多数时候,不管你使用的是什么邮箱服务,你都可以在设置里找到「POP/IMAP」的选项页,国内的一些邮箱服务(例如网易、QQ 邮箱),需要你额外进行一些安全认证(如绑定手机号、开通安全令牌)等,才能启用 IMAP/POP 支持。

第二步:按官网提供的文档进行配置

大多数时候,如果你使用的是主流的邮件服务,你只需要填入账号密码登录就可以。但是偶尔,如果你的邮件客户端没有能够正确地配置 SMTP 和 IMAP 的连接设置,或者你的邮件服务商使用了一些非常规的端口,你可以试着打开「高级设置」,自行按照邮件服务商提供的配置文档,填写协议的连接地址、端口与加密方式。

一般来说,SMTP 默认地址是 smtp.xx.com(xx 为你的邮件服务商域名),使用 465 或 994 端口;IMAP 默认地址是 imap.xx.com,使用 993 端口。两者均采用 SSL 加密。不过,某些邮件服务商可能采取了不一样的地址,像 Outlook 的地址格式是 smtp-mail.outlook.com 和 imap-mail.outlook.com,并且 SMTP 使用的是 STARTTLS 加密的 587 端口,这时候如果你的邮件客户端没有对应的事先规则,而按照通用的一般规则去「猜测」,往往就会连接不成功。

所以,总结一句话,在邮件客户端打开高级设置,对照着邮件服务商提供的标准配置文档去操作

第三步:请确认使用了正确的密码(或授权码)

这一点主要是针对国内最主流的网易邮箱和 QQ 邮箱,两者在开启 IMAP 等设置后,均会生成一个「授权码」,在使用第三方邮件客户端时,在密码一栏请输入这个授权码,而不是你邮箱的登录密码。两者的规则也不尽相同,例如网易会强制要求你绑定手机号,而 QQ 邮箱的授权码,当你更换 QQ 邮箱的密码时,授权码也会失效,需要你重新生成后配置第三方客户端。

第四步:你的邮件服务商是否主动屏蔽了第三方客户端

网易邮箱就是这么干的,它出于宣称的「安全考虑」,屏蔽了一些第三方邮件客户端,例如 Spark 的用户,在添加网易邮箱时往往会提示失败,哪怕你前三步完全操作正确,并且按网易的要求使用了授权码,你依然无法使用 Spark。

对于这种情况,无解。不过,目前网易邮箱通过一个曲折的办法,还是能在 Spark 中添加的。

不知道网易使用了什么私有协议,另外,现在的 SMTP 和 IMAP 都支持 SSL 加密,所谓的数据传输安全性低一说,不知具体作何解释

番外:如何用 Spark 添加网易邮箱账号

该方法在 2017 年 3 月 20 日依旧生效,不过,考虑到从去年年底开始,网易邮箱从所有正式渠道撤下了这一方法,我们无法预期这个办法什么时候会被网易彻底封死。

这个方法是由一名 知乎网友提供的答案,是目前发现的,唯一能成功在 Spark 中添加网易邮箱的方法,我将以 iOS 中的 Spark 为例,完整演示整个过程,请严格按照如下步骤操作,否则无法成功。

在此之前,请确保你已经开启了网易邮箱的 IMAP 设置,并生成了授权码,并以其作为密码在 Spark 中输入

1. 在浏览器中访问该网址:http://config.mail.163.com/settings/imap/login.jsp?uid=xx@xx.com,将最后的 xx@xx.com 替换为你的网易邮箱地址,登录后按照提示,勾选「已知悉以上信息」并最终确认。

在去年年底,如果你使用 Spark 添加网易邮箱账号,在首次会阻止你成功登录,并向你的邮箱发送官方邮件,提醒你如果一定要使用,可以按如下办法开通。今年官方已经撤下了这一渠道入口,只能通过上述 url 访问。

2. 在 Spark 中添加账号,如果直接尝试在图一的界面输入账号和密码,登录始终不会成功。这时候,你需要选择「显示高级设置」,按下图手动输入配置,记住密码是你生成的授权码。点击完成后,稍等片刻,便可以成功添加网易邮箱账号了。


如果你对邮件管理感兴趣,欢迎参加「你应该掌握的邮件管理技能 | Live」,这是少数派( sspai.com )组织的「高效率管理工作和生活」系列 Live 专题中的一场,旨在帮助大家高效处理繁杂的邮件,提高管理邮件的效率。