本科生毕业设计论文 基于安卓通信录.docx

上传人:b****6 文档编号:4725400 上传时间:2022-12-08 格式:DOCX 页数:38 大小:2.08MB
下载 相关 举报
本科生毕业设计论文 基于安卓通信录.docx_第1页
第1页 / 共38页
本科生毕业设计论文 基于安卓通信录.docx_第2页
第2页 / 共38页
本科生毕业设计论文 基于安卓通信录.docx_第3页
第3页 / 共38页
本科生毕业设计论文 基于安卓通信录.docx_第4页
第4页 / 共38页
本科生毕业设计论文 基于安卓通信录.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

本科生毕业设计论文 基于安卓通信录.docx

《本科生毕业设计论文 基于安卓通信录.docx》由会员分享,可在线阅读,更多相关《本科生毕业设计论文 基于安卓通信录.docx(38页珍藏版)》请在冰豆网上搜索。

本科生毕业设计论文 基于安卓通信录.docx

本科生毕业设计论文基于安卓通信录

基于Android平台的个性通讯录

软件工程刘洋指导老师王敏穆斌

【摘要】Android是一种以Linux为基础的开源代码操作系统,主要应用于手机,因为其良好的人机交互能力和能够安装使用众多功能各异的应用软件而深受人们喜爱,本文就介绍其基于Android2.1版本开发的一个“个性通讯录”。

根据当下人们的使用习惯和实际需求,本文对通讯录提出了新的构想和设计,并在这样的基础上,构建实现了该通讯录.

【关键词】AndroidLinux手机通讯录

【Abstract】AndroidisasortofopensourcecodeoperatingsystemthatbaseontheLinux,andmainlyusedbymobilephone.Itissopopularbecauseofthegoodhuman-machineinteractioncapability,andalsothereareallkindsoffunctionalapplicationssoftwarecanbeinstalledthatthroughbythisoperatingsystem,thisarticlewillintroducesakindofcontactsthatbasesontheAndroid2.1version.,thisarticlepointedoutannewideaanddesignforcontactsduetothepeople’soperatinghabitsandparticulardemands,andonsuchabasistoconstructandachievethiscontacts.functiontoensurethesecurityandstabilityofthesystemeffectively.

【Keywords】AndroidLinuxmobilecontacts

 

1绪论

课背题景

随着移动通信与Internet向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,WindowsMobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开发性很强的平台。

经过多年的发展,第三代数字通信(3G)技术活动了广泛的接受,它为移动终端用户带来了更快的数据传输速率。

随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。

因此,移动终端的应用软件和需要的服务将会有很大的发展空间。

Google为此与2007年11月推出了一个专为移动设备设计的软件平台——Android。

Android是一套真正意义上的开发性的移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。

Android是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。

Android平台的开放性等特点既能促进技术(包括平台本身)的创新,又有助于降低开发成本,还可以是运营商能非常方便地制定自己的特色化的产品。

因此,它具有很大的市场发展潜力。

根据中国互联网信息中心(CNNIC)发布的消息称,截止2011年底,中国网民数量达到了惊人的5.13亿,正式迈入了“5亿网民”时代,其中手机网民达到3.4亿,手机上网成为网络介入的一个重要发展方向。

相关技术的基础知识

1.1.1手机操作系统的发展现状

SymbianOS(塞班)由诺基亚、索尼爱立信、摩托罗拉、西门子等几家大型移动通讯设备商共同出资组建的一个合资公司,专门研发手机操作系统。

(1)优点:

过去Symbian系统一直占据智能系统的市场霸主地位,系统能力和易用性等各方面很强!

(2)缺点:

一般配置的机型反映较慢,对主流的媒体格式的支持性较差,不同版本的软件兼容性不好。

(3)支持厂商:

芬兰诺基亚(英国索尼爱立信、韩国三星已宣布退出塞班阵营)。

WindowsMobile(微软)Microsoft用于PocketPC和Smartphone的软件平台,此系统将熟悉的Windows桌面扩展到了个人设备中。

(1)优点:

界面和操作都和电脑上的Windows十分接近,对于机友来说十分熟悉又上手;各种保存在电脑或手机里的信息、资料可以轻松实现共享;有大量的应用软件可供用户选择。

(2)缺点:

占用系统资源高、容易系统崩溃

(3)支持厂商:

中国台湾HTC、韩国三星电子、韩国LG、英国索尼爱立信、阿联酋i-mate,目前各大山寨厂商也同样生产着大量WM产品。

MacOS(苹果iPhone系统)苹果机专用系统,是基于Unix内核的图形化操作系统;一般情况下在普通pc上无法安装的操作系统。

(1)优点:

全触摸设计,真的是一次手机革命,娱乐性能强,第三方软件多

(2)缺点:

系统封闭

(3)支持厂商:

苹果公司

Android(Google公司)Android是Google开发的基于Linux平台的开源手机操作系统。

它包括操作系统、用户界面和应用程序——移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。

谷歌与开放手机联盟合作开发了Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达和T-Mobile在内的30多家技术和无线应用的领军企业组成。

(1)优点:

具备触摸屏、高级图形显示和上网功能,界面强大,可以说是一种

融入全部Web应用的单一平台

(2)缺点:

由于时时刻刻都需要和网络进行连接,因此在手机的能耗方面控制就较差,导致待机能力不足;又由于其开源性,过分依赖开发商,缺少标准配置。

1.1.2云计算和云储存概述

(1)云计算

云计算(cloudcomputing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。

云是网络、互联网的一种比喻说法。

过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设施的抽象。

狭义云计算指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。

这种服务可以是IT和软件、互联网相关,也可是其他服务。

它意味着计算能力也可作为一种商品通过互联网进行流通。

云计算的最大特点就是通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将与互联网更相似。

这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。

(2)云储存

云存储是在云计算(cloudcomputing)概念上延伸和发展出来的一个新的概念。

云计算是是分布式处理(DistributedComputing)、并行处理(ParallelComputing)和网格计算(GridComputing)的发展,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统经计算分析之后将处理结果回传给用户。

通过云计算技术,网络服务提供者可以在数秒之内,处理数以千万计甚至亿计的信息,达到和”超级计算机”同样强大的网络服务。

云储存最大的作用是通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。

1.1.3数据挖掘技术概述

数据挖掘,在人工智能领域,习惯上又称为数据库中的知识发现(KnowledgeDiscoveryinDatabase,KDD),也有人把数据挖掘视为数据库中知识发现过程的一个基本步骤。

知识发现过程由以下三个阶段组成:

(1)数据准备,

(2)数据挖掘,(3)结果表达和解释。

数据挖掘可以与用户或知识库交互。

数据挖掘是通过分析每个数据,从大量数据中寻找其规律的技术,主要有数据准备、规律寻找和规律表示3个步骤。

数据准备是从相关的数据源中选取所需的数据并整合成用于数据挖掘的数据集;规律寻找是用某种方法将数据集所含的规律找出来;规律表示是尽可能以用户可理解的方式(如可视化)将找出的规律表示出来。

图1-1

数据挖掘的任务:

是关联分析、聚类分析、分类、预测、时序模式和偏差分析等。

数据挖掘的方法主要有七种,下面简要介绍下:

(1)神经网络方法

神经网络由于本身良好的鲁棒性、自组织自适应性、并行处理、分布存储和高度容错等特性非常适合解决数据挖掘的问题,因此近年来越来越受到人们的关注。

典型的神经网络模型主要分3大类:

以感知机、bp反向传播模型、函数型网络为代表的,用于分类、预测和模式识别的前馈式神经网络模型;以hopfield的离散模型和连续模型为代表的,分别用于联想记忆和优化计算的反馈式神经网络模型;以art模型、koholon模型为代表的,用于聚类的自组织映射方法。

神经网络方法的缺点是"黑箱"性,人们难以理解网络的学习和决策过程。

(2)遗传算法

遗传算法是一种基于生物自然选择与遗传机理的随机搜索算法,是一种仿生全局优化方法。

遗传算法具有的隐含并行性、易于和其它模型结合等性质使得它在数据挖掘中被加以应用。

(3)决策树方法

决策树是一种常用于预测模型的算法,它通过将大量数据有目的分类,从中找到一些有价值的,潜在的信息。

它的主要优点是描述简单,分类速度快,特别适合大规模的数据处理。

最有影响和最早的决策树方法是由quinlan提出的著名的基于信息熵的id3算法。

它的主要问题是:

id3是非递增学习算法;id3决策树是单变量决策树,复杂概念的表达困难;同性间的相互关系强调不够;抗噪性差。

针对上述问题,出现了许多较好的改进算法,如schlimmer和fisher设计了id4递增式学习算法;钟鸣,陈文伟等提出了ible算法等。

(4)粗集方法

粗集理论是一种研究不精确、不确定知识的数学工具。

粗集方法有几个优点:

不需要给出额外信息;简化输入信息的表达空间;算法简单,易于操作。

粗集处理的对象是类似二维关系表的信息表。

目前成熟的关系数据库管理系统和新发展起来的数据仓库管理系统,为粗集的数据挖掘奠定了坚实的基础。

但粗集的数学基础是集合论,难以直接处理连续的属性。

而现实信息表中连续属性是普遍存在的。

因此连续属性的离散化是制约粗集理论实用化的难点。

现在国际上已经研制出来了一些基于粗集的工具应用软件,如加拿大regina大学开发的kdd-r;美国kansas大学开发的lers等。

(5)覆盖正例排斥反例方法

它是利用覆盖所有正例、排斥所有反例的思想来寻找规则。

首先在正例集合中任选一个种子,到反例集合中逐个比较。

与字段取值构成的选择子相容则舍去,相反则保留。

按此思想循环所有正例种子,将得到正例的规则(选择子的合取式)。

比较典型的算法有michalski的aq11方法、洪家荣改进的aq15方法以及他的ae5方法。

(6)统计分析方法

在数据库字段项之间存在两种关系:

函数关系(能用函数公式表示的确定性关系)和相关关系(不能用函数公式表示,但仍是相关确定性关系),对它们的分析可采用统计学方法,即利用统计学原理对数据库中的信息进行分析。

可进行常用统计(求大量数据中的最大值、最小值、总和、平均值等)、回归分析(用回归方程来表示变量间的数量关系)、相关分析(用相关系数来度量变量间的相关程度)、差异分析(从样本统计量的值得出差异来确定总体参数之间是否存在差异)等。

(7)模糊集方法

即利用模糊集合理论对实际问题进行模糊评判、模糊决策、模糊模式识别和模糊聚类分析。

系统的复杂性越高,模糊性越强,一般模糊集合理论是用隶属度来刻画模糊事物的亦此亦彼性的。

李德毅等人在传统模糊理论和概率统计的基础上,提出了定性定量不确定性转换模型--云模型,并形成了云理论。

本文主要研究工作和章节安排

第一章主要讲述了项目的来源、项目的目的和研究意义,并对本系统开发的一些基本知识进行了介绍。

余下各个章节安排如下:

第二章对android开发环境的搭配进行了详细的说明。

第三章是关于系统的详细设计,包括各个功能模块的设计。

第四章说明了关于数据库的设计。

第五章主要对系统的部分功能通过截图展示,还贴出了相应的主要代码实现。

第六章对本次毕设进行了总结和展望。

2Android的架构概述及开发环境搭建

Android的架构描述

Android是一个包括操作系统,中间件以及一些重要应用程序的专门针对移动设备的层次结构的软件集。

作为一个层次结构的软件集,一定一个层次的系统架构,Android的架构图如下图所示:

图2-1

分析:

第一层:

Linux操作系统和驱动(Linuxkernel),由C语言实现。

Android核心系统服务依赖于Linux2.6内核,包括:

安全性、内存管理、进程管理、网络协议、驱动模型。

Linux内核也作为硬件和软件栈之间的抽象层。

除了标准的Linux内核外,Android还增加了内核的驱动程序:

Binder(IPC)驱动、显示驱动、输入设备驱动、音频系统驱动、摄像头驱动、WiFi驱动、蓝牙驱动、电源管理。

第二层:

本地框架和Java运行环境(LIBRARIES和ANDROIDRUNTIME)由C/C++实现。

包含C/C++库,被Android系统中不同组件使用,它们通过Android应用程序框架为开发者进行服务。

系统C库:

(libc)从BSD继承过来的标准的C系统函数库,专门是为基于嵌入式Linux的设备定制的库。

多媒体库:

基于PackerVideo的OpenCore;该库支持多种常用的音频、视频格式回放和录制,支持多种媒体格式的编和解码格式。

SufaceManager:

显示子系统管理器,并且为多个应用程序提供2D和3D图层的无缝融合。

LibWebCore:

一个最新的Web浏览器引擎,支持Android浏览器,以及一个可嵌入式的Web视图。

SGL:

Skia图形库,底层的2D图形引擎。

3Dlibraries:

基于OpenGLES1.0API的实现;该库可以使用硬件3D加速(如果可用),或者使用高度优化的3D软加速。

FreeType:

位图(bitmap)和矢量(vector)字体显示。

Android运行环境(ANDROIDRUNTIME):

提供了Java编程语言核心库的大多数功能,由DalvikJava虚拟机和基础的Java类库组成。

Dalvik是Android中使用的Java虚拟机,每个Android应用程序都在自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。

Dalvik被设计成一个可以同时高效运行多个虚拟机实例的虚拟系统。

执行后缀名为.dex的Dalvik可执行文件,该格式的文件

针对小内存使用做出了优化。

同时虚拟机是基于寄存器的,所有的类都是有Java编译器编译,然后通过SDK中的“dx”工具

转化为.dex格式由虚拟机执行。

Dalvik虚拟机依赖于Linux内核的一些功能,比如线程机制和底层内存管理机制。

第三层:

Android应用框架(ANDROIDFRAMEWORK)

在Android系统中,开发人员也可以完全访问核心应用程序所使用的API框架。

包含的框架入上图(不在陈述)

第四层:

Android应用程序(APPLICATIONS)

注意:

Android应用程序都是有Java语言编写的。

用户开发的Android应用程序和Android的核心应用程序是同一层次的,它们都是基于Android的系统API构建的。

Android开发环境的搭建

工欲善其事必先利其器,下面介绍一下android开发环境的配置。

2.1.1Android软件开发包下载

(1)JDK4.0请到网址下载。

(2)Eclipse3.4(Europe)请到网址http:

//www.eclipse.org/downloads/下载。

EclipseIDEforjavaDevelopers。

(3)AndroidSDK1.5请到网址下载。

(4)APT插件。

2.1.2其他注意事项

Android的Eclipse插件安装需注意,Eclipse可以对应的网站下载安装,如果通过网络远程安装不成功,可以下载到本地安装。

2.1.3环境安装与搭配

(1)安装JDK

将下载好的JDK安装好以后,设置环境变量步骤如下:

1)我的电脑->属性->高级->环境变量->系统变量中添加以后环境变量:

2)JAVA_HOME值为:

D:

\ProgramFiles\Java\jdk1.6.0_18(你安装JDK的目录)

3)在开始追加 %JAVA_HOME%\bin;

安装完成后,可以检查JDK是否安装成功。

打开cmd窗口,输入java-version查看JDK版本信息,出现以后画面表示安装成功。

图2-2

(2)安装Eclipse

将根据上面给的地址下载后安装即可,也可以选择下载绿色版,解压即可使用。

(3)安装AndroidJDK

运行SDKSetup.exe,点击AvailablePackages。

如果没有出现可安装的包,请点击Settings,选中Misc中的"Forcehttps:

//..."这项,再点击AvailablePackages。

选择希望安装的SDK及其文档或者其它包,点击InstallationSelected、AcceptAll、InstallAccepted,开始下载安装所选包。

在用户变量中新建PATH值为:

AndroidSDK中的tools绝对路径(本机为D:

\AndroidDevelop\android-sdk-windows\tools)。

图2-3

点击“确定”重新启动计算机,重启之后进入cmd窗口,检查SDK是不是安装成功,运行android–h,如果有类似下面的输出,表示安装成功。

图2-4

(4)安装ADT

1)打开EclipseIDE,进入菜单中的”help”->”InstallNewSoftware”。

2)点击Add...按钮,弹出对话框要求输入Name和Location:

Name自己随便取,Location输入http:

//dl-

图2-5

3)确定返回后,在workwith后的下拉列表中选择我们刚才添加的ADT,我们会看到下面出有DeveloperTools,展开它会有AndroidDDMS和AndroidDevelopmentTool,勾选他们。

如下图所示:

图2-6

完成之后就按提示一步一步next:

、选择Window>Preferences...

、在左边的面板选择Android,然后在右侧点击Browse...并选中SDK路径,本机为:

 

D:

\AndroidDevelop\android-sdk-windows

、点击Apply、OK。

配置完成。

(5)创建AVD

为使Android应用程序可以在模拟器上运行,必须创建AVD。

在Eclipse中。

选择Windows>AndroidSDKandAVDManager。

点击左侧面板的VirtualDevices,再右侧点击New。

填入Name,选择Target的API,SDCard大小任意,Skin随便选,Hardware目前保持默认值。

点击CreateAVD即可完成创建AVD。

注意:

如果你点击左侧面板的VirtualDevices,再右侧点击New,而target下拉列表没有课选项时,这时候你:

1)点击右侧面板的AvailablePackages,在右侧勾选

https:

//dl-

图2-7

2)然后点击InstallSelected按钮,接下来就是按提示做就行了

要做这两步,原因是在1.3、AndroidSDK安装中没有安装一些必要的可用包(AvailablePackages)。

(6)HelloWorld

通过File->New->Project菜单,建立新项目"AndroidProject"。

然后填写必要的参数,如下图所示:

(注意这里我勾选的是GoogleAPIs,你可以选你喜欢的,但你要创建相应的AVD。

图2-8

点击Finish后,点击Eclipse的Run菜单选择RunConfiguration。

选择“AndroidApplication”,点击在左上角(按钮像一张纸上有个“+”号)或者双击“AndroidApplication”,有个新的选项“New_configuration”(可以改为我们喜欢的名字)。

在右侧Android面板中点击Browse…,选择HelloWorld

在Target面板的Automatic中勾选相应的AVD,如果没有可用的AVD的话,你需要点击右下角的Manager…,然后新建相应的AVD。

如下图所示:

图2-9

然后点Run按钮即可,运行成功的话会有Android的模拟器界面,如下图所示

图2-10

出现以上画面后,你就可以开始开发属于自己的Android程序了。

本章小结

本章首先对Android的架构进行了全面的介绍,使读者能够对Android内部有了基本的认识和理解。

工欲善其事必先利其器,然后全面详细的介绍了Android开发平台的搭建工作,使读者在开发的时候,能够顺利的搭建好开发环境。

3需求分析与系统总体设计

项目概述

3.1.1主要开发内容

本系统开发大体上分为前用台用户模块和后台云端管理模块。

一、前台用户模块

主要是面向用户的,该模块又细分为通话记录模块、短信记录模块、电话薄模块和个人中心模块,其中个人中心模块又有找朋友、联系人去重、防打扰、联系人分享、云同步五个子模块。

用户可以根据该前台来实现基本的通讯录功能,包括查看最近通话记录,接发送短信,添加、删除、编辑联系人,还可以将拥有相同名字的用户合并。

同时,各个用户还可以设置防打扰的功能,以屏蔽恶意骚扰或者广告信息,用户还能将自己的好友分享给别人,这样可以增加彼此的朋友圈,此外,还提供了找朋友的方式,来增加用户的社交面。

二、后台云端管理模块

云服务器是用谷歌提供的----GoogleStorage,主要是面向管理员使用的,管理员通过该模块对用户存储在云端的数据进行维护、管理,对数据库进行备份。

整个系统由本人一人完成,包括系统的需求分析、总体设计、各个模块的设计、数据库的设计以及系统的整合和运行测试等等。

3.1.2项目开发要求

(1)项目开发要规范统一,模块划分、代码编写等均按照命名规范文档;

(2)程序执行速度快,数据安全。

系统要具有良好的可扩展性;

(3)用户界面简单明了,操作简单实用;

(4)具有一定的健壮性,能够处理大部分一场。

需求分析

3.1.3基本功能需求

使用该系统的主要为两种角色,分别为用户和管理员,下面我们队这两种角色进行基本功能需求分析。

关于用户:

(1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1