基于Android的个人通讯录设计与实现.doc
《基于Android的个人通讯录设计与实现.doc》由会员分享,可在线阅读,更多相关《基于Android的个人通讯录设计与实现.doc(28页珍藏版)》请在冰豆网上搜索。
基于Android的个人通讯录设计与实现
摘要:
智能手机终端能够支持用户添加更多内容丰富的应用功能,从而赢得了绝大部分手机用户的青睐、占据了手机市场的最大比例。
手机通讯录作为手机最基础最常用的软件也随着手机科技的飞速发展变得强大起来,由于Android的开源性、智能性等优势,基于Android的通讯录也开始风靡世界。
本文设计实现的通讯录迎合市场的需求,充分运用了免费的Android开发平台,通过需求分析确定开发功能,以eclipse为开发环境,搭建Android平台,再进行代码编写、程序调试,在实现通讯录基本功能浏览、添加、修改、删除、标记、发短信、打电话、发邮件等的基础上,添加了通讯录加密、添加图像、更改头像等功能,并优化了查找功能,使通讯录功能更友善。
关键词:
智能手机,Android,通讯录,eclipse
THEDESIGNANDIMPLEMENTATIONOFPERSONALADDRESSBOOKBASEDONANDROID
ABSTRACT:
INTELLIGENTMOBILEPHONETERMINALCANSUPPORTUSERSTOADDMORECONTENTRICHAPPLICATIONS,WHICHWONTHEMAJORITYOFMOBILEPHONEUSERS,OCCUPYTHELARGESTPROPORTIONOFMOBILEPHONEMARKET.PHONEBOOKASTHEBASISOFTHEPHONEISTHEMOSTCOMMONLYUSEDSOFTWAREALSOBECOMESTRONGERWITHTHERAPIDDEVELOPMENTOFMOBILETECHNOLOGY,DUETOTHEANDROIDOPENSOURCEANDINTELLIGENTADVANTAGES,ANDROIDBASEDCOMMUNICATIONBOOKALSOBEGANSWEEPINGTHEWORLD.THISPAPERPRESENTSTHEDESIGNANDIMPLEMENTATIONOFTHECOMMUNICATIONBOOKTOCATERTOTHEMARKETDEMAND,TOMAKEFULLUSEOFFREEANDROIDDEVELOPMENTPLATFORM,THROUGHTHENEEDSANALYSISTODETERMINETHEDEVELOPMENTOFFUNCTION,THEECLIPSEDEVELOPMENTENVIRONMENT,TOBUILDTHEANDROIDPLATFORM,ANDTHENCODEWRITINGANDDEBUGGINGTHEPROGRAMS,INTHECONTACTSTOACHIEVEBASICSKILLSWILLBEABLETOBROWSE,ADD,MODIFY,DELETE,MARK,SENDTEXTMESSAGES,PHONE,EMAILANDOTHER,ADDTHECONTACTSENCRYPTED,ADDFEATURESSUCHASTHEIMAGE,CHANGETHEPICTURE,ANDOPTIMIZETHESEARCHFUNCTION,THEADDRESSBOOKFUNCTIONMOREFRIENDLY.
KEYWORDS:
INTELLIGENTMOBILEPHONE,ANDROID,MAILLIST,ECLIPSE目录
摘要 1
1.绪论 4
1.1研究背景 4
1.2主要工作 4
2.ANDROID系统开发简介 5
2.1Android技术简介 5
2.2Android应用程序框架 6
3.软件需求分析 7
3.1软件功能需求分析 7
3.2软件数据库需求分析 7
3.3安全需求分析 8
4.功能设计 9
4.1总体功能设计 9
4.2系统功能设计 9
4.3系统数据库设计 10
5.通讯录的实现 12
5.1Android开发平台搭建 12
5.2具体功能的实现 13
5.2.1密码设置及密码验证 13
5.2.2主显示界面 15
5.2.3删除联系人功能 16
5.2.4Menu功能 16
5.2.5MENU的菜单功能 19
5.2.6通讯功能 20
6系统测试 21
6.1系统测试实例 21
6.2系统测试结果 22
6.2.1系统测试方法 22
6.2.2密码设置/验证功能测试 22
6.2.3对联系人的编辑、查找及删除功能测试 23
6.2.4备份数据功能测试 24
6.2.5通讯功能测试 25
6.3系统测试总结 25
结束语 26
致谢 27
参考文献 28
1绪论
1.1研究背景
智能手机(Smartphone),是指“像个人电脑一样,具有独立的操作系统,可以由用户自行安装软件、游戏等第三方服务商提供的程序,通过此类程序来不断对手机的功能进行扩充,并可以通过移动通讯网络来实现无线网络接入的这样一类手机的总称”。
“智能手机(Smartphone)”这个说法主要是针对“功能手机(Featurephone)”而来的,本身并不意味着这个手机有多“智能(Smart)”;可以说“智能手机(SmartPhone)”就是一台可以随意安装和卸载应用软件的手机(就像电脑那样)。
智能手机的诞生,是掌上电脑(PocketPC)演变而来的。
厂商为了满足市场需求,把电脑的系统移植到手机中,将手机和掌上电脑综合于一体,于是才出现了智能手机的概念。
智能手机具有五大特点:
(1)具备了无线接入互联网的能力,即要有GSM的支持网络下的GPRS或者是CDMA网络支持下的CDMA1X或3G网络。
(2)人性化,可以根据个人需要扩展机器的功能。
(3)它是具有开放性的操作系统,还可以安装非常多的应用程序,使得智能手机的功能可以得到无限的扩展。
(4)具有PDA功能,其中包括个人信息管理、日程记事、任务安排、多媒体应用、浏览网页等。
(5)扩展性能强,第三方软件支持多[1]。
Android本意词是指“机器人”,同时也是Goole于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,Android是一种基于Linux的自由及开放源代码的操作系统,Android以其自由开放源代码的特点而成为最热门的智能手机。
在这个信息化的时代,手机已成为继固话之后最为通俗的交流工具[2],“通讯”成了生活的必需品,这就有了系统下人与人之间的多样联系方式——手机通讯录。
传统通讯录以纸张为载体,将需要记录的联系人一一人登记在册,包括地址、联系方式等,再在需要时进行翻阅查询。
手机通讯录,在手机系统下,占用手机相对很小的空间,系统的记录联系人的联系方式及其他信息,不仅突破了各种条件的舒服,减轻了机主的负担,更方便了使用者的通讯。
综上所述,手机通讯录管理系统是一个高效、实时、绿色环保的管理系统。
然而现在很多通讯录外观花哨、功能单一或形同虚设。
本文针对以上各种弊端,通过需求分析及调查等工作开发了此种通讯录,将各种性能优化,继承通讯录的常用功能,满足一般用户存储,查找,删除,查看的需求,此外还支持发信息,打电话,发邮件,备份SD卡等功能[3]。
1.2主要工作
在此背景下,基于Android手机通讯录的设计及实现具有非常重要的意义,可以根据市场需求情况开发一款实用的手机通讯录。
本系统的设计工作遵循标准的软件设计流程,首先通过市场调查进行需求分析,然后进行软件功能的设计,进而搭建Android开发环境进行代码编写、调试程序,实现软件设计功能,再次,进行软件功能测试,对软件功能的不足及可优化的地方进行记录,最后进行软件系统的优化。
2.Android系统开发简介
2.1Android技术简介
Google与2005年并购了成立22个月的高科技企业Android,展开了短信、手机检索、定位灯的业务,同时基于Linux的Android平台也进入了开发阶段。
Google在2007年11月5日发不了Android的第一个版本,在刚发布之初,Android并没有引起界内太多的关注。
但随着Google组件的开放手机联盟不断有新生力量的加入,Android这个初出茅庐的小子已成为为iPhone分庭抗礼的生力军[4]。
Android采用软件堆层(SoftwareStack,又名软件叠层)的架构,主要分为三部分。
底层以Linux内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和虚拟机VirtualMachine,由C++开发。
最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分,不存在任何以往阻碍移动产业创新的专有权障碍[5]。
Android平台支援各种先进的网络、绘图、3D处理能力,可以用来提供更好的使用者体验,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写[6]。
图1Android的架构
在Android操作系统中,将体系结构划分为4层:
应用层(Application)、应用框架层(ApplicationFramework)、系统运行库层(Libraries)以及Linux内核层(LinuxKernel)[7],如图1所示。
应用层(Application):
运行层是使用Java语言进行开发的一些应用层序,如地图软件、邮件客户端层序、浏览器的连接等都是运行在应用层上。
应用框架层(ApplicationFramework):
应用层序框架,主要是Google公司发布的一些操作支持的类库(API框架)。
应用程序中包含众多组件,开发者也开放新的组件,将组件放入应用程序框架中,可以进行供自己和其它应用程序调用。
系统运行库层(Libraries):
当使用Android框架进行开发时,为了更好地为程序服务,Android操作系统会自动调用一些C/C++的库文件夹来支持所使用的各个组件。
Linux内核层(LinuxKernel):
Android操作系统主要是基于Linux2.6内核,程序的安全性、驱动程序、进程管理等都由Linux内核所提供。
2.2Android应用程序框架
基于Android软件开发接触到最多的部分就是应用程序框架,开发者都是通过应用程序框架来与Android地层进行交互。
整个应用程序框架中有4个重要组件:
Activities、Intent、Services和ContentProvider。
Activities:
一个Activities表示一个程序的显示界面,一个应用程序课包含多个Activities组件,每个Activities组件都有各自的周期。
Intent:
Intent用来完成多个程序之间的跳转,另外还可以用Intent来调用Android本身所提供的应用程序,例如打电话、发短信、发邮件等。
Services:
Services也是Activities程序,只是Services运行在后台,并没有界面显示。
ContentProvider:
不同应用程序之间需要对数据进行共享时用到此组件。
3.软件需求分析
3.1软件功能需求分析
通过对用户需求的市场调查的分析,确定反应用户需求的系统逻辑模型,把整个设计划分成4个单元,分别是程序启动、用户界面、后台服务和数据库适配器,各模块之间的关系如图2所示:
图2系统逻辑模型
在上图中,后台服