邮件客户端开发

前言:

    最近要着手手机上的邮件客户端的开发,想记录开发过程中的一些设计思路以及碰到的一些问题,也借此机会得到高人指点。

 

需求设计

1支持pop3,imap,smtp邮件协议

2支持多个收发任务并发执行

3支持查看下载过程中的邮件(如一封正文1K,附件1M的邮件,下载完邮件头时用户就可以看到此邮件,下载完正文就可立刻查看正文)

 

技术上的一些想法

1同时进行多个帐户的邮件处理比顺序处理它们速度更快(1服务器反应更快,2可以充分利用下载邮件的等待时间处理其它事务)

2网络通信采用异步模式,收发服务进程不阻塞,这样可以在收发的同时接收新的邮件收发任务。

 

设计上的心得

1控制逻辑尽量往上层放,下层为上层提供单一、明确的功能,如SOCKET的封装不应包含超时控制,以及一些与邮件相关的数据假设,但可以根据需要在上层封装超时,读行等。

 

问题:

先浏览一下各邮件协议的特性

                    目录            分段        标记       ...

    pop3        no                no            no

    imap        yes                yes          yes

 

1我觉得最大的问题在于功能的定义、界面设计上

    常用的PC邮件客户端且不论它功能强不强,好不好用,且论不同的客户端、不同的版本功能差异太大,如outlook expless, outlook2003, outlook2007,foxmail都有很大的不同,

    a是否每帐户一个目录(outlook把所有的Pop3邮件都放在一个文件夹(本地文件夹),每IMAP帐户一文件夹,而foxmail每帐户一文件夹)

    b imap帐户的邮件有标记功能,而pop3没有,在界面上可以把所有的邮件放在同一个列表,还是必须分开,

    c 移动邮件同样也有上面的问题。

 

       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值