1、防灾科技学院毕业设计防 灾 科 技 学 院毕 业 设 计题 目Android手机界面管理系统的设计与实现学生姓名杨永利学 号095041107 系 别 灾害信息工程系 专 业信息管理与信息系统 班级0950411 开题时间 2013 年03月01日答辩时间2013年06月07日指导教师陈新房职 称 讲师Android手机界面管理系统的设计与实现作 者 杨永利指导老师 陈新房摘要 21世纪随着科技的不断发展,为了满足3G手机用户更加丰富和舒适的手机应用,手机客户端的软件也将迎来更大的空间,良好的发展机遇。随之而来的是新一代的移动终端用户针对应用软件的可操作性和软件操作的舒适性、以及软件的美观性等
2、方面提出了更高的要求。用户不但希望其所用的软件拥有强大的功能和简洁的操作,更加期望应用软件能为他们提供一个愉悦、舒适、感觉良好的而又轻松的操作环境。本论文研究了Google与开放手机联盟合作开发的Android手机平台的用户界面管理系统。本论文运用Android+eclipse开发手机界面管理系统,系统实现了手机界面的管理,将一个界面上的图标放在三个界面上进行管理,并实现了左右滑动功能,本程序可以发送到手机端,实现被管理的软件的各个功能。关键词:界面管理; Android; XML技术 Design and Implementation of Android Mobile Phone Inte
3、rface Management SystemAuthor Yang YongliInstructor Chen XinfangAbstract with the development of science and technology in 21 Century, the arrival of the era of 3G, The software of mobile phone client will also usher in development opportunities the greater good. It is put forward higher requirement
4、s advanced a new generation mobile terminal users for software interoperability and operating comfort, appearance and software etc.User not only hope that the software has powerful function and simple operation, but also more expected software can provide a environment of pleasant, comfortable, feel
5、 good and easy operating. This paper reserch the user interface management system based on Android mobile phone platform by cooperated of Google and open mobile phone alliance.This paper used Android and eclipse to develop mobile phone interface management system, system realizes the mobile phone in
6、terface management, will be an interface on the icon on the three interface management, and achieved about sliding function, the program can be sent to the mobile phone terminal, to realize each function is management software.Keywords: interface management; Android; XML Technology目 录引言11绪论21.1研究背景2
7、1.2研究的目的及意义21.3本文的研究内容22开发环境与技术42.1 Android操作系统简介42.2 XML技术简介82.3 MVC模式133系统的需求分析153.1 需求分析153.2 系统能够实现的功能154系统的详细设计174.1 系统功能概述174.2 系统的详细设计及运行界面175系统的测试285.1 系统测试的概述285.2 系统的详细测试29结论30致谢31参考文献32防灾科技学院毕业设计引言随着计算机技术的快速发展,各种计算机语言的进一步发展和丰富,各种类型的操作系统应运而生,当前移动设备已经成为人们生活的必需品之一,移动设备的用户界面及体验将越来越受用户关注。Andro
8、id1一词的本义指“机器人”, Android是基于Linux开放性内核的操作系统,是Google公司在2007年11月5日公布的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件基本功能。基本功能是由底层的Linux内核提供,许多公司自行开发其他的软件,大多数程序是用 Java2语言编写的。根据2011年初的调查数据表明,已经称霸十年的塞班系统,被刚刚正式上市两年的操作系统Android操作系统超越,Android操作系统成为全球最受欢迎的智能手机平台。Android系统的应用不仅局限于智能手机平台,在平板电脑市场中也
9、有了迅速的扩张,特别是在智能MP4方面也有较大发展。而本文主要是介绍Android在手机上的应用,主要是对手机界面的管理,通过本问可以使读者更轻松的理解Android手机界面,并轻松愉悦的对界面进行管理。新的发现是,随着人们生活水平的提高,对高科技的理解越来越深刻,同时对应用程序的可用性以及舒适性提出了更高的要求,本次研究有助于今后人们开发出更好的人机交互软件。本文实现了手机界面的管理,使用户能够轻松运用该软件。1绪论1.1研究背景今年来,许许多多的高科技产品不断研制成功,计算机技术越来越成熟,人们的生活水平不断提高的同时,对手机的需求在突飞猛进的增长,随着经济的快速发展,人们对手机界面管理也
10、提出了更高的要求。当前,移动互联网是热点话题,移动互联网是将移动通信和互联网二者结合起来,成为一体。在最近几年里,移动通信和互联网成为当今世界发展最快业务,它们的增长速度都是任何预测家未曾预料到的,所以移动互联网可以预见将会创造怎样的经济神话。 近几年移动终端用户的增长迅猛,手机逐渐成为继电视、广播、报刊、互联网之后的全新媒介形式,俗称“第五媒体”。手机是目前为止所有媒体形式中最具普及性、最快捷、最为方便并具有一定强制性的媒体平台,拥有随时接触、传播、反馈、一对一到多点互动等特点,其信息个性化、定向沟通、低廉成本等优势。从各平台的应用界面可以看出,未来的手机界面将会朝着更智能、更逼真、更灵活的
11、方式设计。随着移动通信技术的快速发展,无线网络带宽越来越大,通信质量越来越好,安全性得到更大的提高,手机应用将会得到更加蓬勃的发展,移动互联网业务更催生了手机与PC的融合,这也将会影响未来手机界面发展。在这样的背景下,用户对手机界面的管理要求从原来的美观可用即可,发展到希望可以做更多的人机交互,用以提高用户的生活质量。1.2研究的目的及意义Android手机界面管理系统的设计与实现的目的主要是能够为用户提供一个简单的界面管理方式,使在一个界面上的图标能够分散到几个界面上,从而可已使用户能够明了个个应用程序的所在位置并且可以对应用程序进行操作。意义是在以往的开发过程中,手机界面的开发花费了开发人
12、员的大量时间,而最终开发出的手机界面往往与用户的需求还存在着一些差距,本研究有利于美工人员对界面进行修改,这就大大的节约了开发时间并且用户也能够快速的找到想要使用的应用程序,舒适的界面能够给用户全新的体验。1.3本文的研究内容本文研究了Android手机界面管理系统,Android手机界面管理系统的主要功能分为两部分,一部分界面在PC机上显示,一部分是发送到手机客户端。界面在PC机上显示部分:界面能够在PC机上显示出AppBiShe3毕设界面,本部分是应用程序图标,能够完成背景更换成浅绿色,利用调用res文件下.png文件实,能够显示本界面上的原有程序,能够看到左右滑动条,利用viewflow
13、控件实现该功能,能够实现程序点击进去进行其他操作的功能,能够实现点击功能,在空白处点击能够弹出应用框,应用框中显示添加应用、管理应用等功能,可以修改文件的位置等。界面发送到客户端部分:在本部分里可以将AppBiShe应用程序安装在手机上进行测试,能够实现系统在PC机上显示的各个功能模块,并且可以直接连接到原有的应用上,实现各个应用的不同功能。2开发环境与技术2.1 Android操作系统简介Android一词翻译成中文是指“机器人”4的意思,Android操作系统是开源手机操作名称,还没有统一的名称,主要是指电子设备,如手机和电脑等等。Android操作系统是基于Linux平台5,Linux平
14、台主要是由四部分组成,其中包括操作系统、中间件、用户界面和应用软件。(1)Android的系统架构Android的系统架构是采用采用分层架构的模式,它和其他很多操作系统没有太大的区别。Android架构6从高层到低层分为四个层:分别是应用程序层、应用程序框架层、系统运行库层和Linux核心层。如图2.1所示:图2.1 Android的系统架构应用程序层(Applications) 7应用程序层主要是指Android平台的电子设备,其中拥有大量的Android软件,这些软件应用起来既方便又快捷,特别是现在的Android手机,它的功能更是强大,简单便捷的设计风格深受用户的喜爱。还包含短信、文件管
15、理、视屏播放等等。应用程序框架层(Application Framework)Android应用框架能够快捷开发出简洁而又清晰的Android软件,节约了很多开发程序所需要的时间,使得人们对其倍加信赖。其中包括:系统运行库层 ( Libraries+Android RunTime ) 8系统库是主要用于连接应用程序框架层和Linux内核层,它是应用程序框中最重要的组成部分。它包括以下几个方面内容:Surface Manager 9负责2D或3D绘图进行显示,执行多个应用程序时需要的地方很多。 SGL 底层的2D图形渲染引擎10 SSL 在Andorid上通信过程中实现握手WebKit 是网页浏
16、览器的软件引擎11Media Framework 多媒体库,其中包括 MPEG4、MP3、H.264、AAC、ARM等格式。 SQLite 小型的关系型数据库引擎 OpenGL|ES 3D绘图函数库 FreeType 提供点阵字与向量字的描绘与显示13 Libc 基于embedded linux的设备定制,从BSD继承来的标准C系统函数库。Android应用程序是采用Java语言编写,程序在Android RunTime中执行,其运行时分为核心库和Dalvik虚拟机两部分。核心库核心库14提供了Java语言API中的大多数功能,同时也包含Android的API,如Android.os、A、An
17、droid.media等等。Dalvik虚拟机Dalvik虚拟机是指Java虚拟机它是基于寄存器的,每个Android程序都有一个Dalivik虚拟机的实例,Android程序在这些实例中执行。传统的虚拟机一般都是基于栈的,Dalvik虚拟机的优点在于内存资源的使用得到了充分的优化,Dalvik虚拟机能够支持支持多个虚拟机。这使得Android系统能够收到用户的更多的青睐。Linux内核层(Linux Kernel)Android的进程管理、内存管理、安全性、电源管理以及网络协议栈和驱动模型等等。这些核心系统服务依赖于Linux内核15,Linux内核和高效的Android架构设计以及OHA(
18、Open Handset Alliance 开放手机联盟)的推广,使得Android的发展更加迅速,我们可以看到Android的发展会随着Linux内核的发展而不断的前进。(2)Android的开发分为三个类型 移植开发移动设备系统Android系统级开发,在某些方面用的比较少,主要有扩展 Android的框架或者是修改bug,能够用到的特殊情况是有些开发移动设备的厂商,比如做gps,这样的便利就是可以往里面写入更多的自己的特定系统东西,但是这样做的弊端是可能导致一些不兼容。还有一种例外的情况是简单的修复bug。Android开发应用程序,是现今主流的开发,也就是利用Android系统写应用程
19、序。在本论文中主要是研究Android的framework如何给这些应用程序提供服务的。可以把Android架构从高层到低层分为四个层:分别是应用程序层、应用程序框架层、系统运行层和Linux核心层。移植开发移动设备涉及到Linux内核(包括其驱动);Android系统级开发涉及到C/C+库的开发及给上层java框架;Android应用程序开发就是调用 java的框架写应用程序。简单的从上到下,Android应用程序需要有java框架支持,比如它要发送短信,就需要java框架,java框架其实就是将C/C+库包装成为了一个JNI,而实现具体的功能是C/C+库 ,最后驱动硬件完成功能,这也就是L
20、inux内核部分。Android自定义View,这样做可以是用户界面更友好,这就需要统一的用户界面。要做到用户界面的统一,就不得不用用到用到风格(style)和主题(theme), 实现一个基本的Android用户界面,涉及构建屏幕基本元素,怎么在xml16 (定义文件)内定义屏幕、用你的代码生成、在不同任务你需要操作你的用户接口。Android生成屏幕有三种方式:xml配置生成;通过你自己用户界面接口生成;直接用代码生成。根据MVC17原则,UI应该与程序逻辑相分离,因此,在XML中定义UI结构是高度推荐的。此外,一个程序从一个屏幕方案调整到另一个也容易得多。在看屏幕元素的层次,Androi
21、d应用程序的基础功能单元就类中的对象。一个Activity本身就能够做很多事,但是屏幕上不会显示它究竟做了些什么。如果你想要让你的Activity在屏幕显示上并且美工师等可以对它的UI进行设计,这就不得不用到view和Viewgroup18,在Android平台view和Viewgroup是最基础的用户界面的表达单元。一般的View对象处理在屏幕上的手势和布局,绘图,焦点变换,滚动条,区域自己表现的按键和测距。一个基类窗体部件服务,widget就是窗体部件的意思,它的功能主要是用于实现绘制交互屏幕元素的子类。窗体部件能够处理自己的绘图与测距。 Viewgroups,其中Viewgroup是An
22、droid.view.Viewgroup类的对象。就像它的名字展示的一样,Viewgroup是特殊的view对象,Viewgroup的功能是用来管理与装载其他组的Viewgroup与下层的view。基类group为layout服务,layout是布局的意思,布局是一组提供屏幕界面通用类型的完全实现子类。Layout的功能是能够为一组view构建一个相应的结构。一个树形结构的界面在Android平台上,你用view树和Viewgroup节点来定义一个Activity的UI,就如同下面图表一样。这个树可以如你需要那样简单或者复杂,并且你可以使用Android的预定义widget和layout或者你
23、自定义的view类型来构建它。使用XML宣布声明LayoutAndroid 的每一个界面都可以视为一个最上层的View Group,而这个View Group 包含子View Group 或View,并且可以有多个层级。TopView GroupTop View GroupViewViewViewView GroupView GroupView图2.2 View树图View Group就是各种Layout,在一个页面中除了上层主要的Layout之外,下层可以直接是各式组件,也可以包含子Layout,其下再放各式组件。/父控件与子控件焦点 /beforeDescendants:Viewgroup
24、会优先其子类控件而获取到焦点 /afterDescendants:Viewgroup只有当其子类控件不需要获取焦点时才获取焦 /blocksDescendants:Viewgroup会覆盖子类控件而直接获得焦点2.2 XML技术简介(1)XML技术简介及定义XML(Extensible Markup Language) 19的定义是XML是一种标记语言,它是具有结构性,主要功能是能够标记电子文件,能过用来定义数据并且标记数据类型,最重要的能够让用户自己进行定义并标记语言的源程序语言。XML主要是通用标记语言的子集,它特别适合Web 传输。XML能够描述和交换运用统一的方法用于应用程序和结构化的
25、数据供应商。 可以举一个日常生活中的例子来理解XML:黑龙江省View Group大庆市View Group宣化乡四站镇让胡路区肇东市哈尔滨市江南区图2.3 实例图XML语言的出现主要是用于解决类似于图2.3中这种数据关系,它能够清晰的解决这种关系,使得复杂的现实问题变得显而易见,并且计算机能过快速识别这种关系,并输出。(1).用户可以自定义标记如下:(2) XML技术的常见应用有如下两种:XML技术用于保存有关系的数据:在xml中,能够使得很多数据有条理的进行保存。XML技术用于软件配置文件,用来展示模块之间的关系。配置文件决定了系统软件运行的速度快慢,好的配置文件无疑决定了软件的好坏,而X
26、ML技术正好可以解决模快之间的调用问题,这使得XML技术备受欢迎。(3) XML技术的语法XML技术的语法主要分为:文档声明,元素,属性,注释,处理指令等等。文档声明:元素:元素就是XML中的标签,标签分成开始标签和结束标签两部分,标签也可嵌套子标签等,如hello word! abcd。XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容进行处理,XML区分大小写,不能有空格,名称中间不能包含冒号,不能以xml(或XML、或Xml等)开头,不能以数字或“_”开头。属性:在XML中一个标签可以有多个属性,每个属性都有自己的名称和取值,定义属性必须遵循与标签相同的命名规范,属性值要用
27、双引号或单引号引起来。注释:Xml文件中“” 格式用于注释,注释不能嵌套,XML声明之前不能有注释。处理指令:简称PI(processing instruction)处理指令用来指挥解析引擎如何解析XML文档的内容,如下面的例子:XML与SGML、HTML的关系。XML由SGML、HTML发展演变得到。SGML就是通用标识语言标准(Standard Generalized Markup Language),是一种文档它的结构非常的复杂,国际上定义电子文件结构和内容描述以通用标识语言标准为标准,主要用于工业领域与结构化高数度据的防卫区,最大的好处在于能够分类与索引。SGML(Standard G
28、eneralized Markup Language)的优点是它所定义的很多功能都比XML强大很多,同时它的缺点是不适用于Web数据描述,通用标识语言标准特别是软件通常很昂贵。 HTML相信我们再熟悉不过了,HTML就是指超文本标识语言,它是Hyper Text Markup Language的缩写,超文本标识语言的优点是适合web 网页的开发,超文本标识语言标记相对较少是它最大的缺点,只有几个固定的标记集如.和等等,它主要缺少sgml的柔性与适应性。在特定领域中需要的标记语言HTML是不能支持的,如对音乐、化学、数学等领域的表示支持比较少。开发人员再开发时很难在web pape上表示出乐谱、
29、化学分子式和数学公式等等。XML吸收了SGML 和HTML的优点并且摒弃了他们的缺点。现在XML 仍然被认为是一种SGML语言。XML比SGML要简单的多,他可以将SGML的大部分的功能实现。在1996年,由Sun Microssystem的John Bosak开始开发W3CSGML工作组(现在称为xml工作组),他们的目标是创建一种在Web中能用,并且可以利用SGML的长处,又保留html的简单性的SGML。到目前为止目标已经基本达到。XML(Extensible Markup Language)的定义是XML是一种标记语言,它是具有结构性,主要功能是能够标记电子文件,能过用来定义数据并且标
30、记数据类型,最重要的能够让用户自己进行定义并标记语言的源程序语言。XML主要是是通用标记语言的子集,它特别适合 Web传输。XML能够描述和交换运用统一的方法用于应用程序和结构化的数据供应商。XML是一种通用的数据格式从低级的角度看,XML是一种简单的数据格式,是纯100的ASCII文本。从高级的角度看,是一种自描述语言。 XML文档。DTD和XML文本组成了XML文档,所谓DTD是Document Type Definition的简称是指一组标记符的语法规则.,它用来表明XML文本是怎组织的是什么样子的,例如DTD可以表示一个必须有一个子标记,标记 则是可有可无的,像这样的例子还有很多,在此
31、不在一一列出。当然一个简单的XML文本可以没有DTD。下面是一个简单的XML文本。 mybishe 其中以?是进程说明,Standalone表示的是外围设备,这里外围设备就是指为该XML文本没有应用其他的文件。因为XML文件可以外部应用DTD等外部数据。 XML 技术包括XSL和CSS两种技术。XML的优点在于把形式内容分离,能够定义信息的基本内容,可以不定义信息是如何表达,这样做的结果是内容可以有许多不同的表达方式。随着XML的发展许多的新技术的也应运而生,其中包括RDF、Xfrom等等,但美中不足的是其中的大部分W3C只是给出了建议,现在还没有形成正式的标准,相信随着科技的不断发展XML还
32、会其他的新技术产生。XML 框架所谓框架即Framework。XML不属于个人,它是一个通用的标准。有许多家公司对其进行了认证,XML是W3C。许多大公司互相竞争的是它的framework和XMLD的Schema. XML framework是一种高层次的结构控制,能够驾驭XML文件的结构。XML framework拥有把商业逻辑(business logic)分离出来的功能,最重要的是XML framework能够实现数据与计算的分离。目前著名的framework有Microsoft的Biztalk 以及联合国(UN/CEFACT)和OASIS联合于99年底推出了EBXML动议,相信在未来X
33、ML 框架将会得到更多的关注,会迎来更好的发展前景。2.3 MVC模式MVC模式是一种视图控制器,它是由是Smalllau发明的一种软件设计模式,随着科技的发展,它受到越来越多的人的欢迎,使得它的应用越来越广泛。 MVC模式的定义:MVC是一个设计模式,它将应用程序分成三个核心部件:模型、视图、控制器,最重要的是可以处理自己需要完成的任务。模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有很多的处理不同任务。被模型返回的模型数据是中立的,就是说中立模型与数据格式无关,这样一个模 型可以为多个视图提供数据。由于应用于代码的只需写模型一次就可以个视图复用,所以减少了被多代码的重复性。MVC
34、的设计模式图如图:模型视图控制器 图2.4 MVC的设计模式图3系统的需求分析3.1 需求分析所谓“需求分析”,在软件工程中就是指确定我们想要计算机“做什么”。需求分析,是指对要解决的问题进行详细的分析,弄清楚要解决的问题要求,包括需要输入什么数据,要得到什么结果,然后将会输出什么,使得整个系统完成全部操作。需求分析是一项重要的工作,也是最困难的工作。该阶段工作有以下特点:(1)用户与开发人员很难进行交流。在本阶段主要是面向用户的,需求分析是面向用户的需求的,这就要求开发人员能够与用户进行良好的沟通达到明确到底要让系统“做什么”,而往往在这个阶段开发人员与用户会出现许多分歧,这就使得需求不明确
35、,而无法进行接下来的活动。最重要的是双方不能理解对方的用意,给开发带来了不便。 (2)用户需求往往是动态变化的。对于那些复杂而的软件系统大型,用户很难精确完整地提出它的与性能要求功能。一开始只能提出一个大概、模糊的功能,只有经过长时间的反复认识才逐步明确。有时进入到设计、编程阶段才能明确,更有甚者,到开发后期还在提新的要求。这无疑给软件开发带来困难。(3)非线性增长的系统变更的代价完成需求分析主要有一下几个步骤:首先,获取用户的需求信息。了解与分析Android手机用户的所有用户的需求类型以及潜在的需求类型。从而确定所要完成的系统的整体目标以及本系统的工作范围。其次,对用户进行访谈和调研。可以
36、采用电话的方式、qq的方式,或者运用email等,更可以进行当面访谈的形式,与用户进行交流。最后,需求分析人员对收集到的用户需求做进一步的分析和整理,对用户需求进行分析。3.2 系统能够实现的功能Android手机界面管理系统的主要功能分为两部分,一部分界面在PC机上显示,一部分是发送到手机客户端。(1)界面在PC机上显示部分界面能够在PC机上显示出AppBiShe毕设界面:本部分是应用程序图标。能够完成背景更换成浅绿色:利用调用res文件下.png文件实现能够显示本界面上的原有程序能够看到左右滑动条:利用viewflow控件实现该功能能够实现程序点击进去进行其他操作的功能能够实现点击功能:在
37、空白处点击能够弹出应用框,应用框中显示添加应用、管理应用等功能。可以修改文件的位置等(2)界面发送到客户端部分在本部分里可以将AppBiShe应用程序安装在手机上进行测试,能够实现系统在PC机上显示的各个功能模块,并且可以直接连接到原有的应用上,实现各个应用的不同功能。4系统的详细设计4.1 系统功能概述Android手机界面管理系统能够实现界面在PC机上显示部分:界面能够在PC机上显示出AppBiShe毕设界面,本部分是应用程序图标,能够完成背景更换成浅绿色,利用调用res文件下.png文件实,能够显示本界面上的原有程序,能够看到左右滑动条,利用viewflow控件实现该功能,能够实现程序点
38、击进去进行其他操作的功能,能够实现点击功能,在空白处点击能够弹出应用框,应用框中显示添加应用、管理应用等功能,可以修改文件的位置等。界面发送到客户端部分:在本部分里可以将AppBiShe应用程序安装在手机上进行测试,能够实现系统在PC机上显示的各个功能模块,并且可以直接连接到原有的应用上,实现各个应用的不同功能。4.2系统的详细设计及运行界面Android手机界面管理系统是应用在手机客户端的一个应用,它能够更好的管理应用软件。主要的设计如下:它利用eclipse与Android模拟器开发实现用户对程序的管理,它以能够容易安装、占用资源少、操作简单既易学而又见长,功能又特别强大,可以是用户随时都可以使用的优势得到巨大的欢迎,与360手机桌面相似,本系统适用于所有客户。系统在PC上运行界面如图4.1: 图4.1 界面图在本页上可以看到AppBiShe程序,点击该程序可以进入此程序如图4.2。图4.2 主界面图界面在手机界面上显示如图4.3:图4.3 手机主界面