【Android论文栏目提醒】:网学会员为需要Android论文的朋友们搜集整理了【论文】Android邮件业务 - 学士论文相关资料,希望对各位网友有所帮助!
Android 邮件业务 摘 要 随着互联网络的发展,电子邮件(E-Mail)业务已从最初的只能发送文本信息发展到现在可以传送语音、图像、动画等多种信息,同时它也是一种快速、方便、安全、廉价的现代信息传递工具。
在目前通讯领域,电子邮件是使用频率最高、许多商务人士不可或缺的重要工具之一。
如何在
Android 手机上实现邮件业务是本课题所要研究的内容。
本项目主要以 Eclipse 作为开发工具,运用面向对象的 Java 开发语言,结合
Android 平台开发出可以在
Android 手机上运行的邮件客户端软件。
本系统主要借助 Sun 公司提供的 JavaMail API 功能包中的各种应用程序接口来实现邮件的发送、接收、读取等功能。
论文详细介绍了各种界面的设计,如登录邮箱界面、连接服务器界面、撰写邮件界面及显示邮件界面等。
经测试,该软件可以在虚拟机或
Android 手机上实现邮件发送、接收、回复、自动保存草稿、删除、转发等功能。
运用 JvaMail API 功能包提供的各种类和方法,可以在虚拟机和
Android 手机上实现邮件发送或接收等业务,能够满足手机用户的基本邮件业务要求。
关键字:
Android,邮件业务,Eclipse,UI,MIME I
Android 邮件业务 Abstract With the development of Internet e-mail business has changed from sending textmessages to transfering audio images animations etc. It is a fast convenient cheapand safe tool for delivering modern information. In the current communication emailis an indispensable tool to many business people and it is used in the highestfrequency. This subject is to study how to realize the email business through Androidplatform.It uses Eclipse as the development tool and the object-oriented programminglanguage Java then based on
Android platform to develop the e-mail businessapplications which can run on the
Android smart phone. This system uses theApplication Programming Interfaces of JavaMail API package offered by Sun torealize sending receiving reading email etc. This paper also introduces all kinds ofinterface designs such as log-mail interfaces connecting to the server interface thedisplaying email interface and the composing message interface etc. The testedsoftware can run on virtual machines and
Android phones used to send receive savedrafts delete forward e-mail and other functions. This software can run on a virtual machine or
Android phone which used to send or receive e-mail with using the classes and methods provided by JavaMail API function package. It can meet the basic requiremets of email business for mobile phone users. Key words:
Android Email business Eclipse UI MIME II
Android 邮件业务 目 录第一章 前 言........................................................ 1 1.1 课题研究的背景和意义 ..................................................................................... 1 1.2 本课题实现的主要方法及内容 ......................................................................... 2第二章
Android 系统的介绍 ........................................... 4 2.1
Android 架构 ....................................................................................................... 4 2.2
Android 的基本组件介绍 ................................................................................... 7 2.3
Android 中的应用程序 ..................................................................................... 10 2.4
Android 开发环境的搭建 ................................................................................. 12第三章 邮件业务的介绍.............................................. 14 3.1 电子邮件的传输机制 ....................................................................................... 14 3.2 邮件传输与接收协议 ....................................................................................... 15 3.3 邮件的组织结构 ............................................................................................... 17 3.4 邮箱安全类型及端口号设置 ........................................................................... 19第四章
Android 邮件业务的研究 ...................................... 20 4.1 邮件业务工程建立与分析 ............................................................................... 20 4.2 UI 设计 .............................................................................................................. 21 4.3 邮件发送功能实现 ........................................................................................... 23 4.4 邮件接收功能实现 ........................................................................................... 28第五章 邮件业务主要功能测试........................................ 32 5.1 登录邮箱 ........................................................................................................... 32 5.2 验证接收邮件功能 ........................................................................................... 34 5.3 验证发送邮件功能 ........................................................................................... 35第六章 结论与展望.................................................. 38 6.1 结论 ................................................................................................................... 38 6.2 对进一步研究的展望 ....................................................................................... 38参 考 文 献 ......................................................... 40致 谢............................................................. 41声 明............................................................. 42 III
Android 邮件业务 第一章 前 言1.1 课题研究的背景和意义 1.1.1 课题的背景介绍 随着社会生活节奏的不断加快,手机已成为生活中不可缺少的通讯设备,人们对手机要求越来越高,手机操作系统也出现了各种不同种类。
现在市场上的主要手机操作系统有 Windows mobile、iphone、symbian 以及当下正逐步兴起的
Android 等,其中占有开源代码的
Android 系统有很大的发展前景。
目前国内已有很多
Android 系统的用户,且还在不断增加,基于
Android 的应用需求也势必会不断增加 1 。
Android 是 Google 公司在 2007 年 11 月 5 日公布的基于 Linux 内核的手机操 作 系 统 , 早 期 由 Google 开 发 , 后 由 开 放 手 机 设 备 联 盟 ( open HandsetAlliance)开发。
2010 年末数据显示,仅正式推出两年的操作系统
Android 已经超越称霸十年的诺基亚(Nokia)、Symbian OS,采用
Android 系统的主要手机厂商包括宏达电子(HTC)、三星(SAMSUNG)、LG、Sony Ericsson、摩托罗拉(MOTOROLA)等。
通常的手机平台只是简单地将一些功能,如电话、Email、酒店查询和天气预报等集合起来,而
Android 平台可综合各种应用 , 相 当 于 通 向 整 个 世 界 的 一 个 窗 口 , 因 此 对 于 IT 业 编 程 人 员 来 说 学 习
Android 开发是未来的一个大趋势。
Android 平台主要包括以下五大优势:①开放性、②挣脱运营商的束缚、③丰富的硬件选择、④不受任何开发商的限制、⑤无缝结合的 Google 应用。
此外随着
Android 版本的不断更新,其功能也越来越强大,从最初的单点触屏到现在的多点触摸,从最初普通联系人到现在的数据同步,从简单的 Google Map到现在的导航系统。
Android 平台不仅支持 Java、C、C等主流的编程语言,还支持 Ruby、Python 等脚本语言,Google 还专门为
Android 的应用开发推出了 Simple 语言,这使得
Android 有着非常广泛的开发群体。
这些都给学习
Android 开发人员带来了便利,在
Android 平台上,程序员可以开发出各式各样的应用程序。
只要具备 Java 开发基础,就能很快掌握
Android 开发。
这同时也为课题
Android 邮件业务的设计及实现的研究提供了便利条件。
1
Android 邮件业务 无论是在国内还是国外,
Android 平台对手机软件行业和移动手机平台都将发挥极大地推动作用,在未来的几年或者一段时间内,
Android 将越发的凸显其重要性。
1.1.2 研究课题的意义 电子邮件作为信息交换的一种通信方式,它是全球多种网络上使用最普遍的一项服务。
这种非交互式的通信,加速了信息的及数据的传送。
通过连接Internet,它可实现各类信号的传送、接收、存贮等处理,将邮件送到世界的各个角落。
到目前为止,邮件是 Internet 资源中使用最多的一种服务,E-mail 不只局限于信件的传递,还可以用来传递文件、声音、图形及图像等不同类型的信息。
当前流行的各大邮件客户端软件除了最主要的收发信件之外,功能越来越复杂,但是人们平常真正用的功能很少,大部分功能都用不到。
鉴于此,本项目主要对
Android 手机上的邮件客户端程序进行研究,简化了很多不必要的功能,实现的功能主要有邮件发送、接收、转发、保存草稿、删除邮件等。
本课题主要是利用 Java 语言编程,实现邮件的一些基本业务,研究本课题的意义在于通过开发邮件业务软件,使设计者熟练应用
Android 平台提供的应用程序接口和各种库,掌握
Android 平台上的各种应用,为以后实现更智能化业务提供准备。
1.2 本课题实现的主要方法及内容 通过开发邮件业务软件,从而了解
Android 平台的相关特性和开发流程。
在进行开发
Android 平台前,需要从以下几方面进行准备: (1)学习 Java 编程,熟悉
Android 平台。
(2)独立设计 UI,以了解 Andorid 和移动平台开发的界面设计方法。
(3)学习相应的类和方法来实现邮件业务,以了解
Android 平台的各种类、库和相关模块的设计模式,了解
Android 先进的思想和 API 的特点。
(4)设计各个功能点,初步了解移动平台开发的注意事项,移动平台的开发,并了解,体会如何获得更好的人机交互。
(5)研究课题时,先画出流程图,掌握各个模块功能实现所需要调用的类及方法,再对各个模块编程具体实现。
2
Android 邮件业务 (6)通过测试完善程序,进一步了解
Android 平台的相关特点和人性化的设计,同时熟悉软件开发的相关流程,深刻认识编程时一些注意事项。
在实现本课题时主要从以下几个方面进行研究: (1)界面设计:包括登录界面、设置登录的安全类型及端口号界面、连接服务器界面、登录邮箱后的主界面、撰写邮件界面、邮件显示界面、下载附件界面、发送邮件界面等。
(2)邮件业务研究:包括登录时安全类型选择及对应端口号设置、邮件发送及接收用到的服务器和协议、邮件传输机制、邮件组织结构等。
(3)邮件发送功能实现:包括主要收件人、抄送、密送、保存草稿、添加附件、取消等功能,同时在撰写邮件时实现邮箱地址判断功能。
(4)接收邮件功能实现:包括是否下载或打开附件、回复、回复所有、转发邮件、删除等功能,对于收件箱中的邮件还可以标记为已读或是未读。
(5)项目主要功能测试:包括界面测试、发送和接收邮件功能测试等。
3
Android 邮件业务 第二章
Android 系统的介绍2.1
Android 架构
Android 架构主要由操作系统,中间件以及一些专门针对移动设备层次结构的软件集和应用程序构成。
作为一个层次结构的软件集,
Android 的整体系统构架如图 2-1 所示2。
图 2-1
Android 系统构架 从图 2-1 中可以看出该系统包含四层结构,最下层是
Android 的操作系统,它是基于 Linux2.6 内核,采用 C 语言开发;往上的中间层包括 Libraries 库(C/C开发)及
Android 运行环境(Java 语言开发)、应用程序框架层(C/C开发)两个层次;最上层是应用层(Java 语言开发)。
Google 采用这样的设计模式是因为相对 C 或是 C,Java 的开发周期更短,开发人员能在短时间内为 Anodroid 提供大量的应用软件。
作为一个智能手机平台,只有通过源源不断的应用程序作为支持,才能受人们欢迎,从而占领市场。
下面对每一部分进行详细介绍3: 4
Android 邮件业务 (1)Applications(应用程序) 应用层包括本地应用程序,第三方开发的应用程序及自己编写的开发应用程序,应用层运行在
Android 运行环境内,并且使用了应用程序框架中可用的类和服务。
在发布时,一般会同一个核心应用程序包一起发布,该应用程序包括 SMS短消息程序、日历、地图、浏览器、联系人管理程序等,所有的应用程序都用Java 语言编写。
(2)Application FrameWork(应用程序框架) 应用程序框架提供了用来创建
Android 应用程序的类,它还对硬件访问提供了一般抽象类,并管理用户界面和应用程序资源。
开发者可以访问核心应用程序所使用 API 框架,该应用程序架构用来简化组件的重用,任何一个应用程序都可以发布它的功能块,同时其它的应用程序都可以使用别人发布的功能块(在遵循框架的安全性限制条件下),该应用程序的重用机制使得组件可以被用户替换。
所有的应用程序都由一系列的服务和系统组成,主要包括以下几个部分: 可扩展的视图(Views):可以用来建立应用程序,包括列表(lists),网格(grid),文本框(textbox),按钮(button),还包括可嵌入的 web 浏览器。
内容管理器(Content Providers):它使得应用程序可以访问另一个应用程序的数据(如联系人数据库)或者共享它们自己的数据。
资源管理器(Resource Manager):提供非代码资源的访问,如本地字符串、图形和分层文件(layout files)。
通知管理器(Notification Manager):它使得应用程序可以在状态栏中显示客户通知信息,如告知用户来电或是短信通知。
活动类管理器(Activity Manager):用来管理应用程序生命周期并提供常用的导航回退功能。
(3)Libraries(库) 该库运行在 Linux 内核之上,
Android 系统中包含了各种 C/C核心库(如libc 和 SSL),且各种不同组件能够使用这些库函数,这些库函数通过
Android 应用程序框架为其提供服务。
以下是一些主要的核心库: 系统 C 库:专门为 Embedded Linux 设备定制的从 BSD(Berkeley SoftwareDistribution,伯克利软件套件)来继承的标准 C 系统函数库。
5
Android 邮件业务 媒体库:基于 PacketViedo 公司的 OpenCORE 开发设计的,该库支持MPEG4、H.264、MP3、AAC、AMR、JPG、PNG 等多种常用的音频,视频格式的回放和录制,还支持静态图像文件。
Surface Manager:对子系统的管理,为多个应用程序提供了 2D 和 3D 图层的无缝连接,提供如同类似 iphone 的界面管理功能。
LibWebCore:支持
Android 浏览器和可嵌入的 web 视图的最新 web 浏览器引擎。
3D libraries:基于 OpenGL ES 1.0APIs 实现,该库可以使用硬件 3D 加速(如果可用)或者使用高度优化的 3D 软加速。
SQLite:它是功能强劲的软型关系型数据库引擎,
Android 中所有的应用程序都可以调用它,在本项目中保存草稿箱时就用到该数据库。
FreeType:位图(bitmap)和矢量(vector)字体显示。
SGL:底层的 2D 图形引擎。
(4)
Android Runtime(
Android 运行环境)
Android 运行环境可以让
Android 手机从本质上与 Linux 内核区分开来。
由于
Android 运行环境中包含了核心库和 Dalvik 虚拟机,因此它是向应用程序提供动力的引擎,它和库一起形成了应用程序框架的基础。
每一个
Android 应用都是运行在自己的进程里,拥有一个独立的 Dalvik 虚拟机实例。
Dalvik 虚拟机执行Dalvik Executable(.dex)格式的文件,该格式的文件经过优化占用很小的内存。
该虚拟机是基于存储器的,所有的类都需先经过 JAVA 编译器编译,再通过 SDK中“dx”工具转换成“.dex”格式的文件,最后由虚拟机运行。
Dalvik 虚拟机依赖Linux kernel 来实现一些潜在功能,例如线程和底层内存管理。
(5)Linux Kernel(Linux 内核)
Android 是基于 Linux version 2.6 内核来提供系统的核心服务,例如安全机制、内存管理、进程管理、网络堆栈和驱动模块等。
该内核还扮演着一个虚拟的中间层,该层介于硬件和其余的软件堆栈之间。
6
Android 邮件业务2.2
Android 的基本组件介绍 在描述每个界面时,一般都由自定义的一个 XML 文件来实现界面的各个组件功能。
Android 库中包含很多种应用程序、接口和实现方法,还可以自己定义组件,下面针对本文中应用的一些组件进行介绍4。
2.2.1
Android 视图组件 在
Android 当中视图组件(View 类)是最基本的一个 UI 类,基本上所有调 用 的 UI 组件都是继承 View 类来实现的。
一些常用到的 widget 组件有TextView(文本框)、List(列表)、EditText(编辑框)、RadioGroup(单项选择)、Button(按钮)、RadioButton(多选按钮)、Checkbox(选择框)、Spinner ( 下 拉 列 表 ) 、 AutoCompleterTextView ( 自 动 完 成 文 本 框 ) 、DatePicker(日期选择器)、ScrollView(滚动视图)、ProgressBar(进度条)等 。
每 个 组 件 在 定 义 时 都 需 定 义 一 个 id 来 标 识 , 需 要 定 义 组 件 的 宽 度(
Android:layout_width ) 和 高 度 (
Android:layout_height ) , 一 般 用“wrap_content”(仅包裹住内容)和“fill_parent”(填充父容器)来描述。
2.2.2
Android 布局组件
Android 界面的五大布局组件:LinearLayout(线性布局)、FrameLayout(帧布局)、TableLayout(表格布局)、AbsoluteLayout(绝对布局)、RaltiveLayout(相对布局)5。
五种布局方式可以相互嵌套,
Android 各种漂亮的界面都是通过嵌套布局实现的。
常用的布局主要是线性布局和相对布局,LinearLayout 的布局方向设为“vertical”表示竖直布局,即先加进的 View 会显示在顶端,后续加入的View 会显示在底端;若设为“horizontal”表示水平布局,即从左到右依次排列布局。
RaltiveLayout 布局指一个组件相对于另一个组件的位置,如设置 A 显示在 B的左侧,则 B 的坐标是不固定的,是相对于 A 的位置。
2.2.3
Android 菜单介绍 当手机在运行某个程序时,可以通过生成菜单的回调方法来生成子功能项,即当按下手机设备上的 menu(菜单)按钮时,
Android 系统可生成包含定义好的子功能项菜单。
下面以撰写邮件为例,说明菜单的回调方法的使用。
在撰写邮件 7
Android 邮件业务时,按下 menu 键时可以选择抄送/密送、发送、保存草稿、舍弃、添加附件功能子项,具体调用方法如下所示: Override public boolean onCreateOptionsMenuMenu menu //在菜单中添加可选子项 super.onCreateOptionsMenumenu //得到 super 函数调用后的返回值 getMenuInflater.inflat.