1、华东交通大学理工学院毕业设计华东交通大学理工学院Institute of Technology.East China Jiaotong University毕 业 设 计Graduation Design(20092013年)题 目 基于android的手机通讯录的设计与实现 分 院: 电气与信息工程分院 专 业: 计算机科学与技术 班 级: 计科 20092 学 号: 20090210440228 学生姓名: 周 纬 指导教师: 李 旋 起讫日期: 2012.112013.05 45华东交通大学理工学院毕业设计原创性申明本人郑重申明:所呈交的毕业设计是本人在导师指导下独立进行的研究工作所取得
2、的研究成果。设计中引用他人的文献、数据、图件、资料,均已在设计中特别加以标注引用,除此之外,本设计不含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。本人完全意识到本申明的法律后果由本人承担。毕业设计作者签名: 日期: 年 月 日毕业设计版权使用授权书本毕业设计作者完全了解学院有关保留、使用毕业设计的规定,同意学校保留并向国家有关部门或机构送交设计的复印件和电子版,允许设计被查阅和借阅。本人授权华东交通大学理工学院可以将本设计的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编毕业设计。(保密的毕业设计
3、在解密后适用本授权书)毕业设计作者签名: 指导教师签名:签字日期: 年 月 日 签字日期: 年 月 日摘 要随着移动设备制造技术和移动通信网络的迅猛发展,全球手机用户日益增加,手机成为了很多人日常生活中必不可少的一部分,手机业在日益发展的同时,人们对手机的功能需求和体验需求也越来越高,因此各种智能手机相继而出,当前市场上最流行的智能手机的操作系统非Android莫属。Android是由谷歌公司于2007年11月推出,并很快得到了手机制造商的认可和广大用户的好评。 本文以Android系统中的手机通讯录模块为项目背景,利用Java语言,Eclipse为开发工具,主要是对通讯录的版面设计和功能设计
4、的研究,尽可能设计出更具实用性的通讯录程序,本系统包括基本的增加联系人删除联系人查找联系人菜单退出功能,其中菜单包括显示所有删除所有号码备份功能,使通讯录更能切合用户的需求。该通讯录的设计严格按照开发的流程进行。关键词:智能手机;Android;Java;通讯录;AbstractWith the rapid development of mobile equipment manufacturing technology and mobile communication network, the increase of global mobile phone user, cell phone h
5、as become peoples essential part in daily life. During the growing of phone industry, the functional requirements and the experience demand of the people on the phone grows, too. Thus, different kinds of smart phone came out one after another. There is no doubt that the most popular operating system
6、 of smart phone in the market currently is Android. Android was released by Google in November 2007 and then got approve of phone manufacturers, favorable reception from users fast. This article is under the background of the phone communication module in Android system, using Java language, Eclipse
7、 as development tool, mainly study the layout and function design of contact manager, trying to strike out a more useful procedure of contact manager. This system contains basic function such as add contact, delete contact, search contact, menu and quit. The menu includes display all, delete all, nu
8、mber backup feature, making the contact manager can meet the needs of users better. The design of this contact manager was strictly in accordance with the development process.Key words: Smart phone; Android; Java; Contact manager目 录摘 要1abstract2目 录31引 言1 1.1项目背景1 1.2国内外研究现状2 1.3本文主要任务3 1.4本文组织结构4 1.
9、5本文研究意义42 Android平台与相关技术5 2.1 Android平台5 2.1.1 Android技术概述5 2.1.2 SQLite数据库6 2.1.3 Linux内核7 2.2 Android开发组件8 2.2.1 Activity组件82.2.2 Service组件92.2.3 Broadcast Receiver组件102.2.4 Content Provider组件103通讯录应用的需求分析11 3.1 功能需求分析11 3.2 性能需求分析12 3.3 数据库需求分析124通讯录应用的功能设计13 4.1 总体设计13 4.2 系统功能设计14 4.3 系统数据库设计14
10、5通讯录应用的详细设计与实现16 5.1 搭建Android平台16 5.2 详细设计与实现175.2.1 用户界面和增加联系人功能设计17 5.2.2 删除联系人功能设计255.2.3 查找联系人功能设计275.2.4 通信功能设计275.2.5 显示所有删除所有及号码备份功能设计296系统测试32 6.1 系统的测试326.1.1 测试的意义及目的326.1.2 测试步骤32 6.2 系统测试的方针32 6.3 测试功能模块336.3.1 增加联系人功能测试336.3.2 编辑联系人测试336.3.3 查找联系人功能测试346.3.4 删除联系人功能测试346.3.5 备份功能测试356.
11、3.6 通讯功能测试36 6.4 测试总结36结 论37参考文献38附 录39后 记401引 言1.1项目背景 智能手机是一种安装了相应开放式操作系统的手机。它就像人脑一样,具有独立的操作系统,统一控制着整个系统。它可以由用户自行安装各种软件,方便用户听歌看电影玩游戏等,由此可见智能手机有很多很多的功能。智能手机的诞生是由掌上电脑演变而来的。最早的掌声电脑一点也不具备手机的通话功能,但是随着科技的越来越发达,人们对掌上电脑的要求也越来越高。由于用户不愿意同时携带手机和掌上电脑两个东西出门,引发了厂商将电脑的系统放到手机中的想法,最终才有了智能手机这个概念。智能手机有五大特点,分别是:1.具备无
12、线接入互联网的功能;2.具有PDA的功能;3.具有开放性的操作系统;4.人性化;5.功能强大。当今的世界是信息极大丰富的世界,人们对于各种信息的获取有极度强烈的需求。随着3G网络的发展,移动终端不再仅仅是通讯网络的终端,同时也成为互联网的终端。3G网络为广泛的用户带来了更快的数据传输率。因此,在谷歌公司的推动下,于2007年11月推出了一个全新的操作系统Android。Android的本义是指“机器人”,也是基于Linux内核的软件平台和操作系统,主要用于一些便携设备。Android最大的特点是在于它拥有一个开放性的体系架构,具有很好的开发和调试环境,并且还支持各种用户体验,Android里面
13、具有丰富的图象系统,对多媒体的支持功能和十分强大的浏览器。Android以Java为编程语言,使接口到功能,都有层出不穷的变化,Android是一套真正意义上的开放性移动设备综合平台,它包括操作系统中间件、用户界面和应用软件组成。Android是由Linux+Java构成的开源软件,允许所有个人和厂商在其基础上进行开发。Android的Logo是由Ascender公司设计的。其中的文字使用了Ascender公司专门制作的称之为“Droid”的字体。Android是一个全身绿色的机器人,绿色也是Android的标志。2012年7月美国科技博客网站BusinessInsider评选出二十一世纪十款
14、最重要的电子产品,Android操作系统和iphone等榜上有名。根据中国互联网信息中心发布的消息称,截止2011年底,中国网民数量达到了惊人的5.13亿,正式迈入“五亿网民”的时代,可是其中有3.4亿是手机网民,由此可见,手机上网成为网络接入的一个重要发展方向,手机也扮演着不可或缺的地位。1.2国内外研究现状Android平台的研发队伍阵容非常强大,包括摩托罗拉、谷歌、HTC、PHILIPS、T-Mobile、高通、魅族、三星、LG、以及中国移动在内的34家企业,都将基于该平台开发手机的新型业务,应用之间的通用性和互联性将在最大程度上得到保持。“开放手机联盟”表示,Android平台可以促使
15、移动设备的创新,让用户体验到最优越的移动服务,同时,开发商也将得到一个新的开放级别,更方便的进行协同合作,从而保障新型移动设备的研发速度。2008年9月22日,美国运营商T-MobileUSA在纽约正式发布第一款Google手机T-Mobile G1。经市场研究机构IDC作出预测称,谷歌的手机操作系统Android到2013年将成为全球第二大手机操作系统,出货量从2008年的69万部直线飙升到2013年6800万部,复合年均增长率达到150.4%。与之对比的是,全球智能手机市场在上述期间的复合年均增长率只有20.9%。当今社会是一个信息高速发展的时代,由于生活节奏越来越快,人们对生活的要求也越
16、来越高,例如人们对手机的要求变的日益增高,手机在如今社会已经成为最通俗的交流工具。在这个人与人关系愈加密切的时代,“交流”成为了人们生活中的必需品。因此,手机市场的发展变的异常迅速,使得手机的操作系统也出现了各种各样的新系统。Android系统可以说是近些年来手机系统中的一匹黑马,打败了诺基亚的塞班系统,一举成为手机操作系统中的龙头老大。现今,Android的主要竞争对手是苹果公司的IOS系统以及RIM的BlackberryOS。Android系统是开源的,“开源”是用于描述那些源码可以被公众使用的软件,并且该软件的使用、修改和发行也不受限制。因为Android的开源性,专业人士可以利用开发的
17、源代码进行二次开发,可以缩短开发周期,降低开发成本,并且打造出更加吸引用户,更加个性化的Android。Android操作系统给予了用户更高的自由度,熟悉Android的都知道:用户可以根据自己的个性来设置自己的手机界面,Android的应用市场还有各种各样的启动器提供给用户选择,让自己的手机更加漂亮。由于Android的开放性,厂商为了迎合用户的需求推出各种新产品。到目前为止,以Android为操作系统的机型已经达到了几十上百种。但是这些功能、外观上的变化不会影响数据的同步以及软件的兼容性等。在信息高速发展的今天,智能手机的普及已经是不可阻挡的。手机通信的最基层部分就是手机通讯录功能,随着科
18、技的愈发先进,手机通讯录的功能也会变的越来越发达,越来越人性化,以满足广大用户的需求。如今,人们联系的越来越密切,手机通讯录也变的那么地不可缺少。人们利用手机通讯录对朋友的联系方式以及一些重要信息的记录,大大的方便了用户对联系人的合理管理。通过使用手机通讯录,减少了名片以及纸质电话本的使用,提高了用户对联系人的补充信息和快速查询的手段。同时,手机通讯录是非常独立,非常清晰的,手机通讯录完全是用户本身操作控制的,它不像QQ、微博、微信、社交网站属于某个公司。由于手机通讯录的独立性和易携带性,可以更好的减少信息的遗失,比纸质电话簿更加方便,更加安全。总而言之,Android手机通讯录系统是各种通讯
19、录系统的相对于比较完善的,它具有准确、方便、高效、易携带等优点。它针对于以前的一些手机通讯录系统有了很大的改进,不像那些通讯录只在乎外观的花哨,内部的功能却是用不上的,形同虚设。Android手机通讯录不仅注重外在的美观,同时也注重功能的使用性。它根据原始的通讯录做了很大的改进,不仅具有常用的添加联系人、编辑联系人、删除联系人、查找联系人等功能,还具有打电话、发信息、显示所有、删除所有、号码备份、SD卡备份等功能。此通讯录系统是十分完善且人性化的。1.3本文主要任务在当前Android系统如此流行的情况下,设计出一款基于Android的手机通讯录可以满足广大用户的需要及喜好,具有非常重要的意义
20、。可以根据用户的需求来设计和实现一款实用的手机通讯录软件。我的设计主要采用了Android的View框架编写,其次是利用Adroid的其他组件来编写。当进入通讯录的增加界面时,调用的是一个用相对布局RelativeLayout的XML布局文件。其中包含了两个按钮。第一个Button是保存联系人信息的,当我们输入了联系人的姓名和电话号码。通过点击保存实现此功能。而且可以保存的信息有新联系人的头像,姓名,手机号码,办室电话,家庭电话,职务职称,单位名称,地址,邮政编码,Email,其他联系方式,备注信息。第二个Button是返回键,就是从添加界面返回前一界面。响应menu键的触发事件,设置底部菜单
21、是否可见,并通过对底部菜单选项的监听实现底部菜单中的增加、查找、删除、菜单、退出等功能,其中菜单包括显示所有、删除所有、号码备份功能。在联系人信息界面时通过点击menu键,会弹出通信功能框,通过与发信息、打电话功能接口的套用来实现。根据用户需求总结出来的反映了用户需求的系统逻辑模型转换成可以实施的物理模型,把整个设计划分成单元,主要解决如何去做的问题,要想创建整个通讯录首先要通过增加联系人信息来创建通讯录。整个应用程序应划分为4个模块,分别是程序启动、用户界面、后台服务和数据库适配器。1.4本文组织结构本文首先是介绍做该项目的国内外背景,然后通过对当前科技的分析以及用户对智能手机的需求,从而简
22、单介绍了手机通讯录的现状和手机通讯录的重要性。进一步又介绍了一些关于Android的发展、特性、Android开发组件以及Android的主要工作机制。本文详细的提出了软件的架构,以及通讯录的设计方案,利用Java语言进行开发,同时还需要基于Dalvik虚拟机,所以,利用Eclipse为开发环境。对各个界面的布局和实现方式进行详细说明;对数据库设计模块进行了详尽的需求分析。运用Android的各个组件,很好的完成了本设计。 1.5本文研究意义随着科学与技术的高速发展,网络技术有了质的提升,如今已经开发出了3G网络,因此,通讯设备也不断的发展,大量的智能手机涌现出来。在Google和Androi
23、d手机联盟的共同推动下,Android手机系统闪亮登场,从众多手机操作系统中脱颖而出,并且得到了广大用户的一致好评。随着智能手机的迅速崛起,人们对手机通讯录要求也增高了。手机通讯录作为手机最基本的功能之一,我们每天都在不停的使用着。据可靠统计显示,有90%以上的人使用手机通讯录功能。现今,手机通讯录功能不断的完善,手机通讯录对人们有非常重要的意义,比记事簿强上千百倍,它不只是显示通讯地址,而是向着人性化、重新化方向发展。通讯录经过了十几年的发展,已经完成的非常完好,在一个联系人名下可以存储手机号码,办室电话,家庭电话,职务职称,单位名称,地址,邮政编码,Email等内容。此通讯录的发展具有划时
24、代的意义。2 Android平台与相关技术2.1Android平台 Android是什么?Android是一个针对移动设备的程序集,其中包括一个操作系统,一个中间件和一些关键性应用,。Android操作系统使用开放免费源代码,一切源代码都是公开免费的。Android的内核是基于Linux,除了内核,则是中介层、数据库元以及应用程式框架。Android的应用程序通常是以Java为基础编写的,通过Dalvik虚拟机将其运行。2.1.1 Android技术介绍Android的本义指机器人,是Google在2007年11月5日宣布的开源手机系统的名称,中文注册商标安致, 该平台由操作系统、中间件、用户
25、界面和应用软件组成,是一个为移动终端打造的真正开放和完整的智能手机系统。它采用了软件堆层的架构,主要分为三个部分,底层是用Linux内核为基础,利用C语言开发,提供基本功能;中间层是数据库和虚拟机,由C+开发;最上层是用户自己进行开发,凭借自己的个性和风格,用Java语言进行编写的各种软件,Android它的开放性就优于其它封闭式的手机系统,因此,用户都可能根据自己的喜好将手机系统中的所有功能重新编写。目前为止,越来越多的人喜欢用Android这个操作系统。Android平台主要是由四个层次组成:Linux内核层、Android运行库和其他库层、应用框架层、应用程序层、硬件抽象层。Linux内
26、核层:Android是基于Linux version 2.6.23内核开发的,主要是添加了一个虚拟的cpu和Android运行。它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机软硬件的连接层。它提供系统的底层服务,包括安全机制、存管理、进程管理、网络堆栈以及一些驱动模块。Android运行库和其他库层:Android运行库包含一组核心库和Dalvik虚拟机。同时Android提供了很多库类支持而且大部分都是开源代码,所有的Android应用都运行在它自己的进程里,该进程是一个Dalvik虚拟机的实例,Dalvik被设计成能在一台设备上高效的运行多个虚拟机实例。Dalvik虚拟机的可执
27、行文件被封装成Dalvik可执行格式。这是被优化过的最小内存依赖的格式。应用框架层:Android 应用程序开发基于框架和组件。在应用框架开发人员可以跟那些核心应用一样拥访问的全部权限。应用的系统机构化设计简化了各组件之间的重用,无论什么应用都可以分发自己的组件。应用程序层:Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。如图2-1: 图2-1 Android架构图硬件抽象层:Android的硬件抽像层是能以封闭源码形式提供硬件驱动模块。的目的是为了把Android fra
28、mework与Linux kernel隔开,让Android不至过度依赖Linux kernel,以达成Kernel independent的概念,也让Android framework的开发能在不考量驱动程序实现的前提下进行发展。2.1.2 SQLite数据库 SQLite是一款轻小型的数据库,是遵守ACID的关联式数据库 管理系统,它的设计目标是嵌入式,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它可以支持Windows操作系统、Linux操作系统以及Unix等组流操作系统,并且可以与很多语言相结合,例如:Java语言、C+语言
29、等。SQLite有五个特点,分别是独立性、非服务式、零配置、元处理、开放性。独立性:sqlite使用标准C语言实现,它只需要很少的系统支持,这使得它很容易移植进嵌入式设备,因此,它能够应用于更广泛的软件环境。Sqlite使用一个虚拟文件系统完成和磁盘的交互,在不同的系统中完成这个交互层是很简单的。非服务式:极大多数的数据库都是以服务的方式实现,这要求客户必须通过某种中间接口来连接数据库。然而slqite可以直接访问数据库,不需要任何中间接口来完成。零配置:因为sqlite不需要中间接口,所以我们不需要安装其他配置。元处理:sqlite的数据库操作具有原子性、孤立性,程序或系统崩溃不会引发数据错
30、误。开放性:任何人可以自由获得和使用sqlite的源码。因为sqlite有这么多的优点,已经有非常多的网站和软件开始使用sqlite数据库,大大方便了开发人员进行开发。已知的有:Goolge、QQ、Iphone、Mac电脑等。2.1.3 Linux内核Linux是目前最受欢迎的自由电脑操作系统的内核。它是一个用C语言写成,符合POSIX标准的Unix操作系统。Linux最早是由芬兰黑客为尝试在英特尔x86架构上提供自由免费的Unix操作系统而开发的。从技术上说Linux是一个内核。“内核”指的是一个提供硬件抽象成、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统,一套
31、基于Linux内核的完整操作系统才是Linux操作系统。作为一个生产操作系统和开源软件,Linux是测试新协议的良好平台。Linux支持大量网络协议,包括TCP/IP协议。Linux也可以支持SCTP(流控制传输协议)之类的协议,它提供很多比TCP/IP更高级的特性。Linux还是一个动态内核,支持动态添加或删除软件组件,他们可以在引导时根据需要或在任何时候由用户插入。随着时间的流逝,Linux内核在内存和CPU使用方面具有较高的效率,并且十分稳定。但是对于Linux来说,最有趣的是在这个大小和复杂性的前提下,依然有很好的可移植性。Linux编译后可以在大量处理器和具有不同体系结构约束和需求的
32、平台上运行。这是非常重要的一点。Android系统也是基于Linux内核,只是将其优化了。它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机软硬件的连接层,提供了一个屏蔽层用于屏蔽硬件和上层软件。2.2 Android开发组件 Android开发分为四大组件,分别是:活动(Activity):用于表现功能。服务(Service):用于后台运行服务,不提供界面呈现。广播接收器(BroadcastReceiver ):用于接收广播。内容提供商(Content Provider):支持在多个应用中存储和读取数据,相当于数据库。2.2.1 Activity组件Android中,Activity
33、是所有程序的根本,所有程序的流程都是运行在Activity中,Activity是Android当中最基本的模块之一。在Android的程序当中,Activity代表手机屏幕的一屏。如果把手机当作浏览器,那么Activity相当于一个网页。在Activity当中可以添加一些Button、Check box等控件。可以看到Activity概念和网页的概念相当类。一般一个Android应用由多个Activity组成的。这多个Activity之间可以进行互相跳转,和网页跳转稍微不一样,Activity之间的跳转有可能返回值,例如,从Activity A 跳转到Activity B,那么当Activit
34、y B 运行结束的时候,有可能会给Activity A 一个返回值。这样做在很多时候是相当方便的。当打开一个新的屏幕时,原来的屏幕会成为暂停,并且进入历史堆栈中。用户可以选择性的移除一些没有必要的屏幕,因为Android会把每个应用的开始到当前的每个屏幕保存在堆栈中。 Activity在运行是会受到一些突然事件的影响,例如:你正在使用一个Activity ,突然来电话了,这时你的应用就要具备处理这些突然事件的能力,这就需要用Activity 生命周期。Activity生命周期有三个状态,如图2-2所示。图2-2 Activity生命周期状态一:当Activity在屏幕前台时,它处于激活或者运行
35、状态。它可以响应用户的一系列操作。状态二:当Activity上面有另外一个Activity,上面的Activity没有完全覆盖它,或者上面的Activity是透明的,这时下面的Activity仍然对用户可见,并且是存活状态,如果系统的内存不足时,就会使这个Activity灭亡。状态三:当Activity完全被另一个Activity覆盖时,就是出于停止状态。但是它仍然保留所有的状态和信息,对用户是不可见的。 如果其他地方需要内存,则系统会杀死这个Activity。2.2.2 Service组件Service是Android系统中的一种组件,它不能自己运行,只能在后台运行,并且可以和其他组件进行交
36、互。Service是一种程序,它可以运行很长时间,但是它却没有用户界面。例如:打开一个音乐播放器的程序,这个时候若想上网,就打开Android浏览器,这个时候虽然已经进入了浏览器这个程序,但是,歌曲播放并没有停止,而是在后台继续一首接着一首的播放。本系统客户端扩展功能就是采用Service来进行设计和开发的。 2.2.3 Broadcast Receiver组件在Android中,Broadcast是一种广泛运用在应用程序之间传输信息的机制。BroadcastReceiver是对发出来的Broadcast进行过滤接受并响应的组件。这个组件除了接受和响应广播通知之外,什么都不做。很多广播由系统代
37、码产生,比如时区变化,电磁量变低,拍摄照片,或是用户改变语言首选项,都会产生广播。应用程序本身也可以启动一个广播,比如,让其他应用程序知道,某些数据已经完成下载,可以被这些应用程序使用了。注册BroadcastReceiver有两种方式。方式一:在AndroidManifest.xml进行注册。这种方法有一个特点是即使应用程序已经关闭了,但这个BroadcastReceiver依然会接受广播出来的对象。方式二:在代码中注册广播,第一种俗称静态注册,第二种俗称动态注册。动态注册比静态注册较灵活。静态注册一个BroadcastReceiver时,无论应用程序是否启动。都可以接受对应的广播。动态注册
38、的时候,如果不执行unregister Receiver();方法被取消。但如果执行这个方法,就不能接受广播。2.2.4 Content Provider组件Content Provider是Android提供的第三方应用数据的访问方案。在Android中,对数据的保护是很严的,除了放在SD卡中的数据,一个应用的数据库、文件等内容,都不允许直接访问。Content Provider屏蔽了内部数据的存储细节,向外提供了上述统一的接口模型,这样的抽象层次,大大简化了上层应用的书写,也对数据的整合提供了更方便的途径。在各大组件中,Service和Content Provider都是那种需要持续访问的
39、。Service如果是一个耗时的场景,往往会提供异步访问的接口,而Content Provider不论效率如何,都提供的是约定的同步访问接口。使用Content Provider能够灵活的替换底层使用的存储设备,不用考虑底层存储设备的细节,从而使应用系统具有良好的数据。3通讯录应用的需求分析3.1 功能需求分析“永远不要以为,自己的需求就是用户的需求”,秉承着这个原则,按照用户的各种需求,我总结出了用户对手机通讯录的大体需求,制定出了手机通讯录的各种功能来满足广大用户的需求。本系统根据对用户需求的分析大概总结出了本项目应该具有的功能模块。该通讯录是一种主要记录联系人的基于Android平台的软
40、件,可以运行在Android平台模拟器的手持设备上。该手机通讯录软件有以下等功能,如图3-1所示:图3-1 手机通讯录不同功能切换(1)增加联系人功能:当我们进入该设计的操作界面时,点击menu键,底部会出来添加功能,点击了添加,我们可以录入联系人的头像、头像、姓名、手机号码、办公室电话、家庭电话、职务职称、单位名称、地址、邮政编码、Email、其他联系方式、备注这些信息。对联系人的一系列信息可以完整的记录。大大方便了用户查看联系人的信息。(2)删除联系人功能:选出某个联系人的名字时,可以对此人的相应数据进行删除,并自动调整后续条。(3)修改联系人功能:选出某个联系人的名字时,可以对此人的相应
41、数据进行修改,并且保存该联系人的新信息。(4)查询功能:要求通过输入联系人的姓名或者电话号码来查询到该联系人的详细信息。(5)拨号及发信息功能:当该设计显示出所有联系人的姓名时,我们可以选中某个联系人,点击menu键与该联系人进行通话或者发信息。 (6)菜单功能:点击menu,在该设计的底部会出现菜单,包括显示所有、删除所有、号码备份功能。3.2 性能需求分析一个软件的功能强大,使用的用户就多。但是,光功能强大还不足够,还需有软件的性能完善。本设计不仅仅考虑了用户需要的功能需求,还尽可能的去满足广大用户使用该软件的感觉。下面我来介绍下本项目的优越性能。第一,用户界面要清晰简单,用户看着也爽快。
42、设计里面要操作简单明了,方便用户操作使用,总之就是要让用户操作起来简单,看起来舒服。 第二,反应的速度要快,软件能够迅速处理用户的操作请求,如果软件不能对用户的操作快速响应,就应该出现一个提示,提示用户软件正在运行,正在处理用户的请求。3.3 数据库需求分析数据结构组织和数据库文件设计要根据不同用途使用要求等,来决定数据的整体组织形式等。数据库就是存放数据的仓库,数据库中的数据按一定数据模型组织、描述和存储,具有较小的重复度、较高的数据独立性和易扩展性,并且可以被在一定范围内的各种用户共享。Android自带了SQLite数据库,是一款轻型数据库,它的设计目标是嵌入式,关于SQLite的数据类
43、型,你会惊讶:Typelesssness,无类型,这意味着用户可以保存任何类型的数据,无论声明的数据类型是什么,对于SQLite来说都是可以用的,完全有效。该设计完全是基于Android平台设计出的,执行Java代码。由于整个SQLite数据库是非可视化操作,所有对数据库的操作都是通过执行Java代码实现。4通讯录应用的功能设计4.1 总体设计项目的好坏决定于做项目的流程,要严格按照项目的流程来完成每一个步骤,这才能保证项目能否在规定时间内完成。该设计流程大体分为:前期调研、确定功能、编写程序代码、调试程序、运行测试、优化完善。这样可以是该设计更加具有可用性。该Android手机通讯录软件主要功能包括:添加联系人、删除联系人、修改联系人、查询联系人、菜单功能。其中菜单功能中又包括:显示所有、删除所有、号码备份功能。当打开联系人详细信息时,还有通讯功能。系统功能如图4-1所示。图4-1 通讯录系统功能通过图