搜索详情-毕业论文网

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回

基于Andriod的邮件客户端设计与实现毕业论文

 2020-03-26 14:50:07  

摘 要

处在信息大爆炸时代的我们,对信息的时序性、丰富性和便捷性有了更高的要求。在物质、网络与信息技术的支持下,几乎人手一个手机,我们希望提供一个平台,让人们享受更加优化的邮件服务。

本系统要实现的是一个基于Android的邮件客户端。要求在Android平台上开发一个功能简单实用的邮件客户端程序,其基本功能主要包括:用户登录模块、邮件发送模块、邮件接收模块、邮件回复模块、邮件转发模块、邮件删除模块、邮件搜索模块。使用JavaMail开发包,并利用SMTP协议和POP3协议完成通过客户端的邮件发送和接收功能。草稿箱中的邮件、接收的附件和邮件是否已读状态等用SQLite数据库存储。邮件地址和密码用SharePreference保存,方便存取。

关键字:Android;邮件客户端;JavaMail;SQLite

Abstract

In the era of information explosion, we have higher requirements on the timing, richness and convenience of information. With the support of material, network and information technology, everyone has a cellphone almostly. We hope to provide a platform for people to enjoy more optimized email service.

This system is aimed to realize an Email Client based on Android. Its requirement is aimed to develop a simple and practical Email Client program on Android platform and its basic functions mainly including: user login module, Email sending module, Email receiving module, Email reply module, Email forwarding module, Email deleting module and Email searching module. Using JavaMail development kit,the SMTP protocol and POP3 protocol complete the mail sending and receiving functions through the client. The Email in the draft box, the received attachments and reading status of the Email are stored in SQLite Database. The Email address and password are saved with SharePreference for easy access.

Key words: Android; Email Client; JavaMail; SQLite

目 录

第1章 绪论 1

1.1 研究背景 1

1.2 研究目标 1

1.3 研究内容 2

1.4 本文结构安排 2

1.5 本章小结 2

第2章 系统分析 3

2.1 可行性分析 3

2.2 需求分析 3

2.2.1 数据字典………………………………………………………………………………...3

2.2.2 数据流图………………………………………………………………………………...5

2.3 软硬件平台 6

2.4 相关技术介绍 6

2.4.1 Android Studio介绍…………………………………………………………………….6

2.4.2 SQLite介绍………………………………………………………………………………6

2.4.3 JavaMail介绍……………………………………………………………………………7

2.4.4 邮件的传输过程………………………………………………………………………..7

2.5 本章小结 8

第3章 总体设计 9

3.1 功能模块概述 9

3.2 基本概念 9

3.3 程序模块概要设计 12

3.4 本章小结 13

第4章 详细设计 14

4.1 系统流程图 14

4.2 数据库设计 14

4.3 算法设计 16

4.4 界面设计 20

4.5 本章小结 23

第5章 系统测试与运行 24

5.1 测试与运行 24

5.2 本章小结 28

第6章 总结与展望 29

6.1 论文总结 29

6.2 工作展望 30

6.3 本章小结 30

参考文献 31

致 谢 32

第1章 绪论

1.1 研究背景

处在信息大爆炸时代的我们,每天都要发送、接收和处理成百上千的数据,对信息的时序性、丰富性和便捷性有了更高的要求。我们希望提供一个平台,能够让人们做信息的主宰,让人们享受更加优化的邮件服务。

尽可能地保障客户端简单明了适合各个阶层的人使用,不论老少,易上手。

目前市面上流行的各个邮件客户端软件除了最主要的收发信件之外,功能可谓是层出不穷。在吸引客户和投放足够多的商业广告上挣扎,我相信大多数人是拒绝广告的,除了他所需要的广告。

随着如今越来越商业化,各个邮件客户端软件的商业气息也越来越浓,铺天盖地的广告消息让真正需要的功能被掩盖。这样让那些对于手机知识相对缺乏的人不敢使用,生怕一个不小心点开广告就扣费用。这一点都不夸张,除了广大的城市手机用户,农村手机用户在现今更多,只不过目前多数人的水平还处于打电话状态,相信随着智能手机使用方法的普及,越来越多的人需要用到邮件的发送,这就需要一个过渡,一个他们易上手安全的邮件客户端。

2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统[1]。Android系统是一套开放性移动设备综合平台,由操作系统、中间件、用户界面和应用软件组成[2]。2017年3月,Android全球网络流量与设备超越Microsoft Windows,成功成为全球第一大操作系统,2017年8月Android O发布了。Android最大的特点--开源,其开放促进了技术的进步与创新[3]。其中中国大陆地区较多的人使用“安卓”或“安致”。截止至2017年12月,我国网民规模达了7.72亿,普及率达到了55.8%,超过全球平均水平的(51.7%)4.1个百分点,超过亚洲平均水平的(46.7%)9.1个百分点[4]。所以说基于Android的邮件客户端是非常有前景的。

1.2 研究目标

设计的系统能很好地体现Android平台的优点,响应速度快、系统界面友好,输入/输出设计合理并具有较好的容错性,适用于各类人群。除了有很好的体验感,该系统最主要要实现如下功能:用户登录、邮件发送、邮件接收、邮件回复、邮件转发、邮件删除和邮件搜索等主要功能。

关于文档方面,应该详细、准确的反映整个系统的设计思想;文档格式应尽可能规范,易读易懂,叙述问题准确,便于后面维护和升级。

1.3 研究内容

在Android平台上进行邮件客户端的开发,通过自定义界面使操作界面更能满足人们的需要。用户使用产生的数据用SQLite数据库进行处理。通过WIFI的链接或移动网络建立起对邮件服务器的链接,然后用户做出相应操作,将处理结果返回客户端。其中相应的操作包括用户登录,用户发送邮件,用户接收邮件,用户回复邮件,用户对邮件进行转发,用户对邮件进行删除,用户对邮件进行搜索。在完成整个系统功能的设计、编码实现及调试、测试工作后,还需要提供相应的软件系统的概要、详细设计说明书,代码设计说明。

1.4 本文结构安排

第1章,对本课题研究背景、研究目标、研究内容和本文所做的工作进行了简要的介绍。

第2章,讨论了本客户端的系统分析,其中包括可行性分析、需求分析以及在实现中要采用的关键技术。

第3章,总体地分析了基于Android的邮件客户端设计与实现的应用需求,根据需求对客户端功能进行了大概的模块划分。

第4章,在第3章总体设计的基础上对各个模块进行了详细设计,设计了系统的数据库结构、算法设计,以及相应的界面设计。

第5章,简要的介绍了系统的测试数据以及测试运行结果。

第6章,结论与展望,大概地描述了客户端采用的技术、个人收获体会以及该客户端需要改进的地方。

最后,以参考文献和致谢结尾。

1.5 本章小结

本章主要从邮件客户端的研究背景、研究目标和研究内容展开,并进行撰写。通过本章的描述,让读者对论文题--《基于Android的邮件客户端设计与实现》的研究内容和方向有了初步的认识,为后续论文的展开打好了基础。

第2章 系统分析

2.1 可行性分析

手机作为一个丰常重要的通讯工具,它无时无刻生活在人们的生活中,它的功能随着科技的进步也越来越丰富。每天人们要耗费大量的精力在手机上。手机相比于电视机和电脑,它的可随身携带,随时随地获取信息让它脱颖而出。根据操作系统的不同,市场上的手机可以分为许多类,例如Windows、Phone IOS等等[5]。除了苹果公司自有的Apple TV产品,其它智能盒子产品搭载的操作系统大多是开放的Android系统[6]。国内外众多厂商的选择也表明了Android操作系统已经成为智能电视等智能盒子产品的最佳选择[7]。直至今天,Android也正式成为了全球第一大操作系统。

国外比国内更早学习研究Android,他们的一些Android开发技术要优于国内。国内目前做的比较好的是QQ、微信、淘宝等APP。从这些好的例子里我们也可以看到外国的一些社交、网购APP的影子。不可否认在模仿力上中国很厉害。在经过这么多年的学习,中国的Android技术已经比较成熟,各种Android中文版使用文档获取也比较容易。

2.2 需求分析

2.2.1 数据字典

(1)数据项的描述

数据项:发件人地址

含义说明:发件人的联系地址

类型:字符型

长度:根据实际情况设定

取值含义:发件人的标志,唯一存在

与其他数据项的逻辑关系:与发件人一一对应关系

数据项:联系人姓名

含义说明:联系人的姓名

类型:不定字符型

长度: 最大长度20

取值含义:联系人的标志,唯一存在

与其他数据项的逻辑关系:与联系人一一对应关系

数据项:联系人地址

含义说明:联系人的联系地址

类型:字符型

长度:根据实际情况设定

取值含义:联系人的地址唯一存在

与其他数据项的逻辑关系:与联系人一一对应关系

数据项:附件名

含义说明:邮件附件的名字

类型:不定字符型

长度:最大长度20

取值含义:无

与其他数据项的逻辑关系:无

数据项:附件路径

含义说明:附件存取的地址

类型:不定字符型

长度:最大长度100

取值含义:无

与其他数据项的逻辑关系:无

数据项:附件大小

含义说明:附件容量大小

类型:字符型

长度:按实际情况而定

取值含义:无

与其他数据项的逻辑关系:无

数据项:收件人地址

含义说明:收件人的联系地址

类型:字符型

长度:根据实际情况设定

取值含义:收件人的标志,唯一存在

与其他数据项的逻辑关系:与收件人一一对应关系

数据项:邮件主题

含义说明:邮件的主题

类型:不定字符型

长度:最大长度20

取值含义:根据实际情况而定

与其他数据项的逻辑关系:与邮件内容存在对应关系

数据项:邮件内容

含义说明:邮件的具体内容

类型:text

长度:根据实际情况设定

取值含义:无

与其他数据项的逻辑关系:与邮件主题存在对应关系

2.2.2 数据流图

邮件客户端的数据流图如下图2.1所示:

图2.1 邮件客户端的数据流图

2.3 软硬件平台

(1)操作系统:Android

(2)数据库:SQLite Database,SharePreference

(3)开发环境:Android Studio

2.4 相关技术介绍

2.4.1 Android Studio介绍

Google Android操作系统的官方集成开发环境(IDE)--Android Studio,Android Studio是基于JetBrains的IntelliJ IDEA软件,专门为Android开发而设计。Android Studio可以在基于Windows,MacOS和Linux的操作系统上进行下载。它是Eclipse Android开发工具(ADT)的替代品,可作为原生Android应用程序开发的主要IDE。其中若使用Eclipse Android开发工具,则必须在进行Android应用程序开发前,先必建好开发环境。开发要用到的工具包括集成开发环境、Android SDK和模拟器,由于是采用Java语言进行开发,还需要使用到JDK的安装包[8],Android平台为开发者提供了方便的应用程序开发框架结构,而且允许开发者完全使用核心应用程序所使用的框架APIs[9]

于2013年5月16日,在Google I / O会议上宣布Android Studio。在2013年5月,Android Studio从0.1版本开始的早期访问的预览阶段,并于2014年,在经过各种测试版后正式发布给公众。于2014年12月,发布第一个稳定版本,即版本1.0。在发布之前,Android开发主要通过Eclipse IDE进行处理,Eclipse IDE是一种更通用的Java IDE,Eclipse IDE也支持许多其他编程语言。从版本1.0开始,目前的稳定版本于2018年3月发布。

与非专业软件相比,Android Studio使生活变得更加轻松,但在宣称它是完全直观且流畅的体验之前,还有一段路要走。Google已经做了很多工作,使Android Studio尽可能强大和有用。Android Studio在编写代码时提供实时提示,并且通常会建议进行必要的更改,以便修复错误或使代码更高效。如果一个变量没有被使用,它将显示为灰色。如果用户开始输入一行代码,Android Studio会提供一个自动完成建议列表来帮助用户完成;如果用户不能完全记住正确的语法,或者用户只是想节省一些时间,那Android Studio是一个很好的选择。

2.4.2 SQLite介绍

SQLite数据库存储数据,SQLite是Android系统集成的一个轻量级的嵌入式数据库引擎,它不是类似于Oracle、MySQL等那样专业的数据库,而是一般用于内存资源有限的嵌入式设备上如手机等适量数据的存储[10-13]。SQLite符合ACID标准,并且使用动态和弱类型的SQL语法来实现大部分SQL标准,并不保证域的完整性。

SQLite作为嵌入式数据库软件的一种流行选择,用于应用软件(如Web浏览器)中的本地/客户端存储。SQLite可以说是最广泛部署的数据库引擎,因为它现在已经被几个广泛的浏览器,操作系统和嵌入式系统(如移动电话)等使用。SQLite绑定了许多编程语言,其中包括Android Studio。

具有完整Unicode功能的SQLite是可选的。

SQLite读操作可以被多任务处理,但是写操作只能按顺序执行。也就是说,SQLite可以同时满足多个读取访问,但只有当前没有其他访问正在被服务时才能满足写入访问,否则,写访问将失败,并显示错误代码(或者可以自动重试直到可配置的超时过期)。处理临时表时,这种并发访问情况会发生变化。在预写日志记录(WAL)打开的情况下启用并发读取和写入操作时,版本3.7中的这一限制是放宽的。

在2015年,通过json1扩展和新的子类型接口,SQLite 3.9版引入了JSON内容管理。

2.4.3 JavaMail介绍

JavaMail,是编程接口,专门给开发者提供处理电子邮件相关内容的。JavaMail是API,是Sun发布的,可以方便地执行一些常用的邮件传输。JavaMail支持的邮件协议,如SMTP、POP3。开发人员使用JavaMail编写邮件程序时,无需考虑底层的通信细节(Socket),JavaMail也提供了能够创建出各种复杂MIME格式的邮件内容的API。JavaMail API可作为Java SE平台使用的可选包提供,也包含在Java EE平台中。

JavaMail的体系结构如下图2.2所示:

图2.2 JavaMail体系结构

2.4.4 邮件的传输过程

以***@126.com向***@qq.com发送邮件为例:

***@126.com点客户端通过SMTP协议传送邮件给126的邮件服务器中的SMTP服务器,其中的SMTP服务器利用SMTP协议传送给qq的邮件服务器中的SMTP服务器,最后收件人的电子邮件客户端利用POP3协议连接到运行POP3的邮件服务器上,进行邮件接收。POP3:接收邮件;SMTP:发送邮件;邮件的传输过程如下图2.3所示:

图2.3 邮件的传输过程

2.5 本章小结

本章主要从邮件客户端的可行性分析、需求分析、软硬件平台和相关技术展开描述。通过该章的描述能让读者准确了解该项目的可实施性,明白应该基于哪种技术完成该客户端的设计与实现。

第3章 总体设计

以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。