ImageVerifierCode 换一换
格式:DOCX , 页数:38 ,大小:2.08MB ,
资源ID:4725400      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4725400.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(本科生毕业设计论文 基于安卓通信录.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

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

1、本科生毕业设计论文 基于安卓通信录基于Android平台的个性通讯录软件工程 刘洋 指导老师 王敏 穆斌【摘要】 Android是一种以Linux为基础的开源代码操作系统,主要应用于手机,因为其良好的人机交互能力和能够安装使用众多功能各异的应用软件而深受人们喜爱,本文就介绍其基于Android 2.1版本开发的一个“个性通讯录”。根据当下人们的使用习惯和实际需求,本文对通讯录提出了新的构想和设计,并在这样的基础上,构建实现了该通讯录.【关键词】 Android Linux 手机 通讯录【Abstract】 Android is a sort of open source code operat

2、ing system that base on the Linux, and mainly used by mobile phone. It is so popular because of the good human-machine interaction capability, and also there are all kinds of functional applications software can be installed that through by this operating system, this article will introduces a kind

3、of contacts that bases on the Android 2.1 version., this article pointed out an new idea and design for contacts due to the peoples operating habits and particular demands, and on such a basis to construct and achieve this contacts.function to ensure the security and stability of the system effectiv

4、ely.【Keywords】 Android Linux mobile contacts1 绪论课背题景随着移动通信与Internet向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,Windows Mobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开发性很强的平台。经过多年的发展,第三代数字通信(3G)技术活动了广泛的接受,它为移动终端用户带来了更快的数据传输速率。随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。Google为此与2007年11月

5、推出了一个专为移动设备设计的软件平台Android。Android 是一套真正意义上的开发性的移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。Android 是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。Android平台的开放性等特点既能促进技术(包括平台本身)的创新,又有助于降低开发成本,还可以是运营商能非常方便地制定自己的特色化的产品。因此,它具有很大的市场发展潜力。根据中国互联网信息中心(CNNIC)发布的消息称,截止2011年底,中国网民数量达到了惊人的5.13亿,正式迈入了“5亿网民”时代,其中手机网民达到3.4亿,手机上网成为网络介入

6、的一个重要发展方向。相关技术的基础知识1.1.1 手机操作系统的发展现状Symbian OS(塞班) 由诺基亚、索尼爱立信、摩托罗拉、西门子等几家大型移动通讯设备商共同出资组建的一个合资公司,专门研发手机操作系统。(1) 优点:过去Symbian系统一直占据智能系统的市场霸主地位,系统能力和易用性等各方面很强!(2) 缺点:一般配置的机型反映较慢,对主流的媒体格式的支持性较差,不同版本的软件兼容性不好。(3) 支持厂商:芬兰诺基亚(英国索尼爱立信、韩国三星已宣布退出塞班阵营)。Windows Mobile(微软) Microsoft 用于 Pocket PC 和 Smartphone 的软件平

7、台,此系统将熟悉的 Windows 桌面扩展到了个人设备中。(1) 优点:界面和操作都和电脑上的Windows十分接近,对于机友来说十分熟悉又上手;各种保存在电脑或手机里的信息、资料可以轻松实现共享;有大量的应用软件可供用户选择。(2) 缺点:占用系统资源高、容易系统崩溃(3) 支持厂商:中国台湾HTC、韩国三星电子、韩国LG、英国索尼爱立信、阿联酋i-mate,目前各大山寨厂商也同样生产着大量WM产品。Mac OS(苹果iPhone系统) 苹果机专用系统,是基于Unix内核的图形化操作系统;一般情况下在普通pc上无法安装的操作系统。(1) 优点:全触摸设计,真的是一次手机革命,娱乐性能强,第

8、三方软件多(2) 缺点:系统封闭(3) 支持厂商:苹果公司Android(Google公司) Android 是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序 移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌与开放手机联盟合作开发了 Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达和 T-Mobile 在内的 30 多家技术和无线应用的领军企业组成。(1) 优点:具备触摸屏、高级图形显示和上网功能,界面强大,可以说是一种融入全部Web应用的单一平台(2) 缺点:由于时时刻刻都需要和网络进行连接,因此在手机的

9、能耗方面控制就较差,导致待机能力不足;又由于其开源性,过分依赖开发商,缺少标准配置。1.1.2 云计算和云储存概述(1) 云计算云计算(cloud computing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法。过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设施的抽象。狭义云计算指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。它意味

10、着计算能力也可作为一种商品通过互联网进行流通。云计算的最大特点就是通过使计算分布在大量的分布式计算机上,而非本地计算机或远程服务器中,企业数据中心的运行将与互联网更相似。这使得企业能够将资源切换到需要的应用上,根据需求访问计算机和存储系统。(2) 云储存云存储是在云计算 (cloud computing)概念上延伸和发展出来的一个新的概念。云计算是是分布式处理(Distributed Computing)、并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统

11、经计算分析之后将处理结果回传给用户。通过云计算技术,网络服务提供者可以在数秒之内,处理数以千万计甚至亿计的信息,达到和”超级计算机”同样强大的网络服务。云储存最大的作用是通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。1.1.3 数据挖掘技术概述数据挖掘,在人工智能领域,习惯上又称为数据库中的知识发现(Knowledge Discovery in Database, KDD), 也有人把数据挖掘视为数据库中知识发现过程的一个基本步骤。知识发现过程由以下三个阶段组成:(1)数据准备,(2)

12、数据挖掘,(3)结果表达和解释。数据挖掘可以与用户或知识库交互。数据挖掘是通过分析每个数据,从大量数据中寻找其规律的技术,主要有数据准备、规律寻找和规律表示3个步骤。数据准备是从相关的数据源中选取所需的数据并整合成用于数据挖掘的数据集;规律寻找是用某种方法将数据集所含的规律找出来;规律表示是尽可能以用户可理解的方式(如可视化)将找出的规律表示出来。图1-1数据挖掘的任务:是关联分析、聚类分析、分类、预测、时序模式和偏差分析等。 数据挖掘的方法主要有七种,下面简要介绍下:(1) 神经网络方法神经网络由于本身良好的鲁棒性、自组织自适应性、并行处理、分布存储和高度容错等特性非常适合解决数据挖掘的问题

13、,因此近年来越来越受到人们的关注。典型的神经网络模型主要分3大类:以感知机、bp反向传播模型、函数型网络为代表的,用于分类、预测和模式识别的前馈式神经网络模型;以hopfield的离散模型和连续模型为代表的,分别用于联想记忆和优化计算的反馈式神经网络模型;以art模型、koholon模型为代表的,用于聚类的自组织映射方法。神经网络方法的缺点是黑箱性,人们难以理解网络的学习和决策过程。 (2) 遗传算法遗传算法是一种基于生物自然选择与遗传机理的随机搜索算法,是一种仿生全局优化方法。遗传算法具有的隐含并行性、易于和其它模型结合等性质使得它在数据挖掘中被加以应用。 (3) 决策树方法决策树是一种常用

14、于预测模型的算法,它通过将大量数据有目的分类,从中找到一些有价值的,潜在的信息。它的主要优点是描述简单,分类速度快,特别适合大规模的数据处理。最有影响和最早的决策树方法是由quinlan提出的著名的基于信息熵的id3算法。它的主要问题是:id3是非递增学习算法;id3决策树是单变量决策树,复杂概念的表达困难;同性间的相互关系强调不够;抗噪性差。针对上述问题,出现了许多较好的改进算法,如 schlimmer和fisher设计了id4递增式学习算法;钟鸣,陈文伟等提出了ible算法等。 (4) 粗集方法粗集理论是一种研究不精确、不确定知识的数学工具。粗集方法有几个优点:不需要给出额外信息;简化输入

15、信息的表达空间;算法简单,易于操作。粗集处理的对象是类似二维关系表的信息表。目前成熟的关系数据库管理系统和新发展起来的数据仓库管理系统,为粗集的数据挖掘奠定了坚实的基础。但粗集的数学基础是集合论,难以直接处理连续的属性。而现实信息表中连续属性是普遍存在的。因此连续属性的离散化是制约粗集理论实用化的难点。现在国际上已经研制出来了一些基于粗集的工具应用软件,如加拿大regina大学开发的kdd-r;美国kansas大学开发的lers等。 (5) 覆盖正例排斥反例方法它是利用覆盖所有正例、排斥所有反例的思想来寻找规则。首先在正例集合中任选一个种子,到反例集合中逐个比较。与字段取值构成的选择子相容则舍

16、去,相反则保留。按此思想循环所有正例种子,将得到正例的规则(选择子的合取式)。比较典型的算法有michalski的aq11方法、洪家荣改进的aq15方法以及他的ae5方法。 (6) 统计分析方法在数据库字段项之间存在两种关系:函数关系(能用函数公式表示的确定性关系)和相关关系(不能用函数公式表示,但仍是相关确定性关系),对它们的分析可采用统计学方法,即利用统计学原理对数据库中的信息进行分析。可进行常用统计(求大量数据中的最大值、最小值、总和、平均值等)、回归分析(用回归方程来表示变量间的数量关系)、相关分析(用相关系数来度量变量间的相关程度)、差异分析(从样本统计量的值得出差异来确定总体参数之

17、间是否存在差异)等。 (7) 模糊集方法即利用模糊集合理论对实际问题进行模糊评判、模糊决策、模糊模式识别和模糊聚类分析。系统的复杂性越高,模糊性越强,一般模糊集合理论是用隶属度来刻画模糊事物的亦此亦彼性的。李德毅等人在传统模糊理论和概率统计的基础上,提出了定性定量不确定性转换模型-云模型,并形成了云理论。本文主要研究工作和章节安排第一章主要讲述了项目的来源、项目的目的和研究意义,并对本系统开发的一些基本知识进行了介绍。余下各个章节安排如下:第二章对android开发环境的搭配进行了详细的说明。第三章是关于系统的详细设计,包括各个功能模块的设计。第四章说明了关于数据库的设计。第五章主要对系统的部

18、分功能通过截图展示,还贴出了相应的主要代码实现。第六章对本次毕设进行了总结和展望。2 Android的架构概述及开发环境搭建 Android的架构描述Android是一个包括操作系统,中间件以及一些重要应用程序的专门针对移动设备的层次结构的软件集。作为一个层次结构的软件集,一定一个层次的系统架构,Android的架构图如下图所示:图2-1分析:第一层:Linux操作系统和驱动(Linux kernel),由C语言实现。Android核心系统服务依赖于Linux2.6内核,包括:安全性、内存管理、进程管理、网络协议、驱动模型。Linux内核也作为硬件和软件栈之间的抽象层。除了标准的Linux内核

19、外,Android还增加了内核的驱动程序:Binder(IPC)驱动、显示驱动、输入设备驱动、音频系统驱动、摄像头驱动、WiFi驱动、蓝牙驱动、电源管理。第二层:本地框架和Java运行环境(LIBRARIES 和 ANDROID RUNTIME)由C/C+实现。包含C/C+库,被Android系统中不同组件使用,它们通过Android应用程序框架为开发者进行服务。系统C库:(libc)从BSD继承过来的标准的C系统函数库,专门是为基于嵌入式Linux的设备定制的库。多媒体库:基于PackerVideo的OpenCore;该库支持多种常用的音频、视频格式回放和录制,支持多种媒体格式的编和解码格式

20、。Suface Manager:显示子系统管理器,并且为多个应用程序提供2D和3D图层的无缝融合。LibWebCore:一个最新的Web浏览器引擎,支持Android浏览器,以及一个可嵌入式的Web视图。SGL:Skia图形库,底层的2D图形引擎。3D libraries:基于OpenGL ES1.0 API的实现;该库可以使用硬件3D加速(如果可用),或者使用高度优化的3D软加速。FreeType:位图(bitmap)和矢量(vector)字体显示。Android运行环境(ANDROID RUNTIME):提供了Java编程语言核心库的大多数功能,由Dalvik Java虚拟机和基础的Jav

21、a类库组成。Dalvik是Android中使用的Java虚拟机,每个Android应用程序都在自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个可以同时高效运行多个虚拟机实例的虚拟系统。执行后缀名为.dex的Dalvik可执行文件,该格式的文件针对小内存使用做出了优化。同时虚拟机是基于寄存器的,所有的类都是有Java编译器编译,然后通过SDK中的“dx”工具转化为.dex格式由虚拟机执行。Dalvik虚拟机依赖于Linux内核的一些功能,比如线程机制和底层内存管理机制。第三层:Android应用框架(ANDROIDFRAMEWORK)在Android系统中,开发

22、人员也可以完全访问核心应用程序所使用的API框架。包含的框架入上图(不在陈述)第四层:Android应用程序(APPLICATIONS)注意:Android应用程序都是有Java语言编写的。用户开发的Android应用程序和Android的核心应用程序是同一层次的,它们都是基于Android的系统API构建的。Android开发环境的搭建工欲善其事必先利其器,下面介绍一下android开发环境的配置。2.1.1 Android软件开发包下载(1) JDK4.0 请到网址 下载。(2) Eclipse3.4(Europe) 请到网址 http:/www.eclipse.org/downloads

23、/ 下载。 Eclipse IDE for java Developers。(3) Android SDK1.5 请到网址 下载。(4) APT插件。2.1.2 其他注意事项Android的Eclipse插件安装需注意,Eclipse可以对应的网站下载安装,如果通过网络远程安装不成功,可以下载到本地安装。2.1.3 环境安装与搭配(1) 安装JDK将下载好的JDK安装好以后,设置环境变量步骤如下:1) 我的电脑-属性-高级-环境变量-系统变量中添加以后环境变量:2) JAVA_HOME值为:D:Program FilesJavajdk1.6.0_18 (你安装JDK的目录)3) 在开始追加%J

24、AVA_HOME%bin;安装完成后,可以检查JDK是否安装成功。打开cmd窗口,输入java-version查看JDK版本信息,出现以后画面表示安装成功。图2-2(2) 安装Eclipse将根据上面给的地址下载后安装即可,也可以选择下载绿色版,解压即可使用。(3) 安装Android JDK运行SDK Setup.exe,点击Available Packages。如果没有出现可安装的包,请点击Settings,选中Misc中的Force https:/.这项,再点击Available Packages。选择希望安装的SDK及其文档或者其它包,点击Installation Selected、A

25、ccept All、Install Accepted,开始下载安装所选包。在用户变量中新建PATH值为:Android SDK中的tools绝对路径(本机为D:AndroidDevelopandroid-sdk-windowstools)。图2-3点击“确定”重新启动计算机,重启之后进入cmd窗口,检查SDK是不是安装成功,运行android h ,如果有类似下面的输出,表示安装成功。图2-4(4) 安装ADT1) 打开Eclipse IDE,进入菜单中的”help”-”Install New Software”。2) 点击Add.按钮,弹出对话框要求输入Name和Location:Name自

26、己随便取,Location输入http:/dl-图2-53) 确定返回后,在work with后的下拉列表中选择我们刚才添加的ADT,我们会看到下面出有Developer Tools,展开它会有Android DDMS和Android Development Tool,勾选他们。 如下图所示:图2-6完成之后就按提示一步一步next:、选择Window Preferences.、在左边的面板选择Android,然后在右侧点击Browse.并选中SDK路径,本机为:D:AndroidDevelopandroid-sdk-windows、点击Apply、OK。配置完成。(5) 创建AVD为使And

27、roid应用程序可以在模拟器上运行,必须创建AVD。在Eclipse中。选择Windows Android SDK and AVD Manager。点击左侧面板的Virtual Devices,再右侧点击New。填入Name,选择Target的API,SD Card大小任意,Skin随便选,Hardware目前保持默认值。点击Create AVD即可完成创建AVD。注意:如果你点击左侧面板的Virtual Devices,再右侧点击New,而target下拉列表没有课选项时,这时候你:1) 点击右侧面板的Available Packages,在右侧勾选https:/dl-图2-72) 然后点击

28、Install Selected按钮,接下来就是按提示做就行了要做这两步,原因是在1.3、Android SDK安装中没有安装一些必要的可用包(Available Packages)。(6) Hello World通过File - New - Project 菜单,建立新项目Android Project。 然后填写必要的参数,如下图所示:(注意这里我勾选的是Google APIs,你可以选你喜欢的,但你要创建相应的AVD。图2-8点击Finish后,点击Eclipse的Run菜单选择Run Configuration。选择“Android Application”,点击在左上角(按钮像一张纸

29、上有个“+”号)或者双击“Android Application”, 有个新的选项“New_configuration”(可以改为我们喜欢的名字)。在右侧Android面板中点击Browse,选择HelloWorld在Target面板的Automatic中勾选相应的AVD,如果没有可用的AVD的话,你需要点击右下角的Manager,然后新建相应的AVD。如下图所示:图2-9然后点Run按钮即可,运行成功的话会有Android的模拟器界面,如下图所示图2-10出现以上画面后,你就可以开始开发属于自己的Android程序了。本章小结本章首先对Android的架构进行了全面的介绍,使读者能够对And

30、roid内部有了基本的认识和理解。工欲善其事必先利其器,然后全面详细的介绍了Android开发平台的搭建工作,使读者在开发的时候,能够顺利的搭建好开发环境。3 需求分析与系统总体设计项目概述3.1.1 主要开发内容本系统开发大体上分为前用台用户模块和后台云端管理模块。一、 前台用户模块主要是面向用户的,该模块又细分为通话记录模块、短信记录模块、电话薄模块和个人中心模块,其中个人中心模块又有找朋友、联系人去重、防打扰、联系人分享、云同步五个子模块。用户可以根据该前台来实现基本的通讯录功能,包括查看最近通话记录,接发送短信,添加、删除、编辑联系人,还可以将拥有相同名字的用户合并。同时,各个用户还可

31、以设置防打扰的功能,以屏蔽恶意骚扰或者广告信息,用户还能将自己的好友分享给别人,这样可以增加彼此的朋友圈,此外,还提供了找朋友的方式,来增加用户的社交面。二、 后台云端管理模块云服务器是用谷歌提供的-Google Storage,主要是面向管理员使用的,管理员通过该模块对用户存储在云端的数据进行维护、管理,对数据库进行备份。整个系统由本人一人完成,包括系统的需求分析、总体设计、各个模块的设计、数据库的设计以及系统的整合和运行测试等等。3.1.2 项目开发要求(1) 项目开发要规范统一,模块划分、代码编写等均按照命名规范文档;(2) 程序执行速度快,数据安全。系统要具有良好的可扩展性;(3) 用户界面简单明了,操作简单实用;(4) 具有一定的健壮性,能够处理大部分一场。需求分析3.1.3 基本功能需求使用该系统的主要为两种角色,分别为用户和管理员,下面我们队这两种角色进行基本功能需求分析。关于用户:(1

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

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