我正在做一个Android应用程序,我想从某个电子邮件帐户收到最后25封邮件.
对于Gmail,我可以使用http://g4j.sourceforge.net/,并在http://developer.yahoo.com/mail/上有 Yahoo的Mail Web Service API .
但我找不到用Hotmail做的事情.
你知道是否有可能吗?
我也担心有这么多的依赖.我不知道我是否应该做一些像https://sourceforge.net/projects/mrpostman/这样的网页抓取.
使用不同的电子邮件提供商时,您可以通过各种方式下载(或上传)电子邮件.我对以下提供商的经验是:
雅虎:
POP3:仅适用于Plus用户(付费服务).没有收到新邮件,没有文件夹访问权限,没有发送邮件; 只需获取所有收件箱(或所有电子邮件UID).更新:雅虎为雅虎亚洲用户提供免费的POP访问和转发服务.
邮件Web服务API:仅为免费用户列出电子邮件标题,但为Plus用户(再次付费服务)提供完整访问权限,包括从已发送文件夹中获取邮件.当然,如果您可以鼓励(强制)用户购买Plus服务,如果您在此之前未被雅虎律师起诉,您将获得雅虎的佣金,因为在Web服务文档中声明:"您可能不会使用Yahoo! Mail Web Service API在第三方电子邮件客户端中显示用户的Yahoo!帐户信息".
Web Scraping:它似乎是雅虎免费用户唯一可用的解决方案,但要注意雅虎更改其网页时可能出现的兼容性问题.还要确保延迟链接访问,因为Yahoo在其服务器上具有Web抓取检测机制.
GMail的:
IMAPv4:适用于所有用户.确保使用此协议访问GMail中的几乎所有内容.它完全实现; 您可以访问所有传入和发送的邮件,甚至通过将其保存在已发送的文件夹中来发送电子邮件.您可以使用JavaMail或Java中的任何其他IMAP客户端库(例如Ristretto API)来执行此操作.在开始将其用于任何协议之前,请确保了解JavaMail限制.它在所有协议(SMTP/POP3/IMAP)中都有许多限制(和小错误).
POP3:适用于GMail的所有用户,但不建议使用,因为POP3固有限制(没有文件夹,没有获取新消息).
Hotmail的:
POP3:适用于所有用户,但POP3固有限制(没有文件夹,没有发送邮件,没有获取新消息)以及POP3访问所需的称为15分钟延迟的Hotmail限制.
Web Scraping:它似乎是访问已发送邮件的唯一解决方案,但再次了解Microsoft更改可能存在的Hotmail网页和Web抓取检测软件时可能出现的兼容性问题.
一般IMAPv4提供者:
通常,并非所有IMAP提供程序都支持已发送文件夹,因为它不是标准的IMAP文件夹,但大多数都是这样做的.有关此选项,请查看提供商的帮助或常见问题解答.
Genral POP3提供者:
不要指望POP3这样做是因为POP3在从收件箱中获取2封新电子邮件时尽力不让客户端和服务器崩溃;-)
同时,不要忘记Web Scraping存在法律问题,并且在大多数网站中都是禁止的.