1、android的网络管理设计与实现- 33 -2020年4月19日文档仅供参考目录摘要- 3 -ABSTRACT- 4 -绪论- 5 -1 Android的架构分析- 6 -1.1 Android的功能特征- 6 -1.2 Android架构分析- 6 -1.2.1应用程序框架- 7 -1.2.2类库- 7 -1.2.3 Android运行时组件- 8 -1.3 Android应用的构成和工作机制- 9 -2 手机网络管理平台前台设计实现- 10 -2.1 系统设计需求- 10 -2.1.1 需求分析- 10 -2.1.2 功能模块- 11 -2.1.3 数据库设计- 12 -2.1.4 性能
2、及安全性分析- 12 -2.2 系统代码实现- 13 -2.2.1 Package Explorer中的组件- 13 -2.2.2应用程序的资源- 13 -2.2.3 布局文件main.xml- 14 -2.3 软件测试实现- 15 -2.3.1 系统主界面的实现- 15 -2.3.2 查询功能实现- 17 -2.3.3常见的错误分析解决- 21 -3 总结- 22 -4 参考文献- 23 -致谢- 24 -摘要近几年,随着智能手机一步步走进普通人的生活,它将成为人们获取信息的主要设备。因此,手机的应用服务将会有很大的发展空间,网络管理平台的手机客户端应用就是其中的一项。Android平台提供
3、给用户非常方便,这将为机网络管理平台的前台设计与实现提供了更好的平台。另外,Android平台基本上是免费的,因此能够有效降低软件的成本,最终让每个用户能够快速地获取信息。本文对当前应用的Symbian、WindowsMobile、MacOSX和RIM等平台的现状进行了分析与比较。进而研究分析了Android平台的系统架构和组件模型,接着解析了Android中的重要API和应用构成,以Intent和生命周期的机制。在此基础上,基于Android平台设计和开发网络管理平台前台应用软件。本系统界面友好、操作便捷,具有良好的可扩展性和可维护性;系统经过测试,能够稳定运行,能够满足手机用户的基本需求。
4、关键词:Android;Java;网络管理;Intent;布局ABSTRACTIn recent years, with the smartphone step by step into the lives of ordinary people, it will become the main equipment of access to information. Therefore, the application of mobile phone service there will be much room for development, network management platf
5、orm mobile client application is a. Android platform is very convenient to the user, which will drive the front desk of the network management platform design and implementation provides a better platform. In addition, the Android platform is basically free, can effectively reduce software costs, an
6、d ultimately allowing each user to quickly access the information.The status of application platforms such as Symbian, WindowsMobile, Mac OS X and RIM analyzed and compared. Further research and analysis of system architecture and component model of the Android platform, and then parse the Android A
7、PI and composition, of Intent and life cycle mechanism. On this basis, based on the Android platform design and development of network management platform foreground application software. The system interface is friendly, easy to handle, has good scalability and maintainability; system has been test
8、ed and will operate to meet the basic needs of mobile phone users.Keywords: Android; Java; Netword management; Intent; Layout绪论随着移动通信的发展以及互联网向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,windows Mobile,Palm OS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开放性很强的平台。Android是一套真正意义上的开放性移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。Android是由
9、Linux+Java 构成的开源软件,允许所有厂商和个人在其基础上进行开发。Android 平台的开放性等特点既能促进技术(包括平台自身)的创新,又有助于降低开发成本,还能够使运营商能非常方便地制定自己的特色化的产品。因此,它具有很大的市场发展潜力。经过多年的发展,第三代数字通信( 3G)技术获得了广泛的接受,它为移动终端用户带来了更快的数据传输速率。随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。 Google与包括中国移动、摩托罗拉在内的三十多家技术和无线应用的领军企业组成的开发联盟为此于 11月推出了一个
10、专为移动设备设计的软件平台Android。Android最大特点在于它是一个开放的体系架构,具有非常好的开发和调试环境,而且还支持各种可扩展的用户体验, Android里面具有非常丰富的图形系统, 对多媒体的支持功能和非常强大的浏览器。本课题的目的在于掌握Java手机应用开发技术和移动软件平台开发技术。在以Java语言为基础,结合Android移动开发平台,并利用Android提供的SDK,完成在Android平台上运行的系统查询软件,形成一款具有一定功能的手机应用软件。本课题的意义在于作为手机网络管理平台一个部分的功能,能够熟练应用Android平台提供的应用程序接口,掌握Android平台
11、上的各种应用。1 Android的架构分析Android是一个包含操作系统、中介架构层及应用程序所产生出来的软件堆栈架构。由下而上,其核心为嵌入式Linux2.6作业系统,向上搭配Google为Android开发的类库及Android运行时,再配合应用程序架构,来开发各种不同的应用程序。1.1 Android的功能特征(l)应用程序架构:在应用程序架构内已经具备多种不同的基础组件,在开发应用程序时,就能够直接调用这些组件来使用,能够节省开发应用程序的心力及时间。(2)Dalvik虚拟机器:在Android平台上所使用Java虚拟机,不是Sim公司的标准Java虚拟机,而是使用Google自主开
12、发的代号为Dalvik的虚拟机,它在保证API方面的兼容的同时,针对移动手机进行了大幅优化,占用资源更小,运行效率更高。(3)集成的浏览器:集成的浏览器是Android内建的浏览器,是以WebKit的浏览引擎为基础所开发成的。WedKit是一个开源浏览器网页排版引擎,当前使用WebKit引擎的浏览器主要有:Safari,Midori,Epiphany等。配合Android手机的功能,能够在浏览网页时,达到更好的效果,例如:局部性的缩放网页上的资讯、触控式的操作等效果。(4)优化的绘图能力:在程序里能够用到的绘图功能分为2D与3D两个方面。在2D方面,Android提供了一套特有的类库(SGL;
13、而在3D方面则是使用OpenGLES1.0(openGL for Embedded systems)规范的类库。它们是一种非常快的图形引擎,而且支持硬件加速。1.2 Android架构分析图中显示的是Android架构的五个主要部分。1.2.1应用程序框架在Android SDK中,定义了让开发者使用与核心应用程序相同API的权限应用程序框架是为了要简化组件的重新利用而设计的,应用程序能够发布功能为其它应用程序所使用。可是,这要受限于应用程序架构的安全机制,使用者以用同样的机制来新增、置换组件。当前所有的应用程序是由服务及系统来组成,包含一套强大和可扩展的视图系统:用来建构一个应用程序的基本组
14、件,包了在开发系统画面时,常见的列表、网格、文本框、按钮等控制项,甚至是内嵌的Web浏览器。 图1-1 Android架构的五个部分1.2.2类库在Android中包含一些C/C+的类库,这些类库能被Android系统中不同的组件来使用。开发者能够经过应用程序框架使用这些功能。部分核心类库列表如下:(1)surface Manager:主要的功能是让开发者能够去存取/显示系统及管理的功能,在显示与存取操作间的对应、互动以及实现无接缝的2D/3D多应用程序之间的整合。例如:在2D、2D显示上的合成、叠合动作。(2)3Dlibraries:主要是依openGLES1.0规范所定义的3D绘图引擎。该
15、库使用硬件加速(当硬件可用时),能够将硬件的3D功能做最佳化的处理显示。(3)SGL:主要是处理有关显示2D方面的绘图引擎。(4)Media Frame work:主要是以packetVideo公司的OpenCORE为基础所发展的多媒体类库,该库支持回放和录制大量流行的音视频格式和静态图片。例如:MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF等格式(5)Free Type:主要是用来显示点阵图和处理向量字形的。(6)SSL:(secureSocketsuyer),中文名为“安全套接层协议层”,它是网景公司提出的基于WEB应用的安全协议,当前版本为3.0。SSL协议指定了
16、一种在应用程序协议(如HTTP、Telenet、NMTP和FTP等)和TCP/IP协议之间提供数据安全性分层的机制,它为TCP/IP连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。SSL协议位于TCP胆协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层:SSL记录协议(SSL Record Proto col):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL握手协议(SSL Hand shake proto col):它建立在SSL记录协议之上
17、,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。SSL协议提供的服务主要有:认证用户和服务器,确保数据发送到正确的客户机和服务器;加密数据以防止数据中途被窃取;维护数据的完整性,确保数据在传输过程中不被改变。(7)SQLite:SQLite是一套开放性的关联式资料库,能够被所有应用程序使用的轻量级的关系数据库引擎。(8)web Kit:是一个先进的网页浏览器引擎,被用来构建Android浏览器和内嵌的web视图,也能够让开发者利用这个引擎来做不同的应用。(9)lib c:就是一个BSD标准C类库。可是,针对Linux嵌入式装置进行过最佳化的调整。1.2.3 A
18、ndroid运行时组件虽然Android是用Java语言来开发、撰写应用程序,但却不使用Java运行时组件来执行Java程序,而是使用了由Google自行研发的Android运行时组件来执行程序。Android运行时组件包括两个重要的部分,一个是核心类库,另一个是Dalvik虚拟机。1.3 Android应用的构成和工作机制对于一个Android应用程序来说,是由Activity、IntentReceiver、Service、Content Provider四部分组成,但并不是每一个Android应用程序都必须由这四部分组成。在应用程序中使用时,需要在配置文件AndroidManifest.x
19、ml中进行配置。这个配置文件是每个Android应用程序所必须的,用于定义应用程序的组件、组件的功能以及必要条件等。Android应用的构成和工作流程如图2-2: 图2-2 Android的构成和工作流程2 手机网络管理平台前台设计实现2.1 系统设计需求2.1.1 需求分析 当前,手机用户的网络管理的方式主要是经过对机手机自带的网络WIFI连接方式。随着中国综合国力的不断增强和国民经济的持续发展,手机网络通信条件不断改进,智能手机用户数目也在迅猛增长。以陈旧的手机自带管理和无线网络的配合的手机管理模式在技术上远远落不能满足现在发展增长趋势,已经很难适应新形势下提升手机网络管理水平的要求。本平
20、台需求分析书在于为智能手机网络管理平台项目提供: a:提出软件整体需求,作为软件开发人员和最终用户之间了解的基础; b:提出软件功能要求、性能要求等要求,作为软件设计的基础; c:为软件测试提供依据。 本项目的目标是创立一个手机网络管理智能平台,实现用户不断上升的需求,总体功能需求:根据系统功能的需求,对系统的功能进行划分,表示如下图:手机智能网络管理平台查询可连接网络查询加密网络WIFI查询查询结果展示2.1.2 功能模块 系统需要有无线WIFI的功能。按功能结构来分主要分为无线网络连接、无线查询、无线信号强弱查询三大大功能模块。1)无线网络管理功能结构如图3-1所示。无线网络管理无线网络连
21、接无线信号强弱无线查询图2-1 手机网络管理功能结构图手机网络管理功能主要包括添加网络、连接网络、删除三大功能。开始进入网络管理子程序时,系统提供了添加网络功能,并提供了网络信息添加成功与否的对话框提示;查看无线名称功能,也提供了无线信号成功与否的对话框提示。2)无线管理名称查询功能结构图如图3-2所示。无线网络名称管理是否需要密码无线名称查询无线网络连接图2-2 管理程序功能结构图2.1.3 数据库设计本软件中有两部分数据需要存储,一个是显示页面的数据,另一个详细页面的数据。因此选择SQLite数据库作为存储数据的方法,建立数据库forcasts.db,而且建立两张表weather_forc
22、astt和weather_widget,分别存储显示页面的数据和详细页面的数据。对于页面设计的部分,主要是用户登录管理的数据存储,而且提供查询,我们设计的表如下:表2-1 手机持有人信息列名数据类型说明备注licensevarchar(10)证件号主键namevarchar(10)姓名必填sexbit性别必填statevarchar(10)国家选填phonetypevarchar(50)手机类型选填 另外一个就是无线网络信息的数据存储,在此表中添加了无线网络基本信息,表的结构如下:表2-1 无线网络信息列名数据类型说明备注plateNovarchar(10)无线名称主键modelvarchar
23、(20)类型选填isvarchar(10)是否加密选填addressvarchar(50)密码选填modelvarchar(20)网络型号选填2.1.4 性能及安全性分析 总体性能需求包括3个方面,一个是查询响应时间需求,需要在快速的时间内给用户返回界面数据,另外一个就是稳定性需求,本系统需要有良好的服务器做为数据返回对象,最后就是安全性要求,安全性要求比较特殊,需要有好的服务机器和良好的操作习惯来保证系统安全,具体实现如下: 1、时间要求 说明对该平台的时间特性要求,如对“响应时间,信息处理时间,信息传输时间”等的要求。 2、稳定性要求 服务器一般要求使用专用服务器,因为专用服务器中有多个C
24、PU,而且整体配置比较优秀,服务器在不停地运转,如果1个CPU或者硬盘坏掉 ,服务器还能够工作,不会影响到整个系统的继续运行。 3、安全性要求 对平台中的数据进行定期的备份,防止数据丢失;对数据进行加密,并注意及时下载和安装软件补丁程序,并在服务器中设置拦截,定期对服务器进行查毒、杀毒等操作,确保系统安全运行。2.2 系统代码实现2.2.1 Package Explorer中的组件src 文件夹包含示例应用程序的包,即mars.main。R.javaAndroid Developer Tools 自动创立这个文件,它提供访问 Android 应用程序的各种资源所需的常量。res 文件夹包含应用
25、程序的资源,包括:图标,布局文件,字符串。AndriodManifest.xml示例应用程序的部署描述符。 2.2.2应用程序的资源正如前面提到的,Android 中的资源放在项目的 res 子目录中。资源分为三类:1.Drawables:这个文件夹包含图形文件,比如图标和位图。2.Layouts:这个文件夹包含表示应用程序布局和视图的 XML 文件。后面会详细研究这些文件。3.Values:这个文件夹包含strings.xml 文件。这是为应用程序实现字符串本地化的主要方法。2.2.3 布局文件main.xml图3-4fill_parent使视图元素占满可用的空间。也能够认为这就是 “拉伸”
26、。 wrap_content这个值让 Android 把元素一个接一个地排列,不进行拉伸。在构建期间对所有资源进行编译。编译过程的输出之一是 R.java 文件,这个文件向应用程序的其余部分提供资源。图3-5 AndroidManifest.xml文件是 Android 应用程序的部署描述符。这个文件列出应用程序中包含的所有活动、服务、内容提供器和接收器,以及应用程序支持的IntentFilter。2.3 软件测试实现2.3.1 系统主界面的实现本软件开始执行后,便直接进入了系统的主界面,为了系统以后能扩展其它服务,故将主界面设置成一般界面,如图4-6所示。图3-6图4-6中是点击menu菜单
27、的结果,会有music和exit的选项,music按钮点击后能够选择开启和关闭背景音乐,exit按钮点击后会退出软件。主界面的总体实现过程如下:(1)首先创立布局。打开Layout里的main.xml,在这个布局里需要添加Button和四个TextViews的布局。整体布局采用的垂直型方式,单面嵌套一个水平型方式的布局和相对型布局方式。(2)在程序一开始时,框架就反向调用oncreate方法,也调用oncreateoptionsMenu()。调用oncreate()方法时,此函数首先正向调用父类别Activity的oncreate()方法,先执行父类别的预设行为,然后才执行自己(MyAndro
28、idservice)的oncreate()方法的附加行为。继续执行到setcontentview(R.layout.main)指令时,就去读取main.xml的内容,依据它来进行屏幕画面的布局,并显示出来。并能够在main.xml中设置背景图片。图3-7 (3)其中在调用onCreateoptionsMenu()方法时,执行到指令:图3-8(4)当选取选项时,有以下程序实现:背景音乐播放的实现:图3-92.3.2 查询功能实现软件界面编辑:在main.xml文件中 设置TextView,EditView以及Button。并在xingzuo.java中进行配置,如图4-10:图3-10Main.
29、xml中的代码如图4-11:图3-11经过设置EditText,Button的布局,得到输入查询界面。图3-12在文本框中输入需要填写的数据,点击“完成”的时候,则调用以下程序,经过对Button设置监听器来实现界面的跳转,即class Mybutton implements OnClicklistener,代码如图4-13:图3-13图中,经过程序,叫输入数字符转化为double型,程序表示如下: 图3-14最后显示出对应的xml文件中设置的内容,其内容体现在strings.xml文件中。 图3-15反向调用父类,public boolean OnOptionsItemSlected(Men
30、uItem item)的方法,图3-16程序中的背景图片都放在res文件夹中的drawable文件夹中,其中有低,中,高三种分辨率,本设计中我们采用低的分辨率。图3-17另外,在R.java中会对所有用到的类生成对应的id,在使用时直接调用id。最后,在Androidmanifest.xml中要对android name,lable进行注册。代码为:图3-182.3.3常见的错误分析解决当调试软件完成后,对代码进行修改,在对程序就行第二次调试时,容易遇到下面的提示错误,AVD manager无法再次调试出程序:图3-19则能够用一下解决方案,进入到模拟器中,点击settings-applica
31、tions-mangeapplications- select the application-select “uninstall”,将启动的查询软件删除掉,下次就能够成功启动。3 总结本文主要研究了Android平台的架构以及在Android平台上开发的SNMP网络管理智能管理平台查询系统,除了即时文本信息的传输外,还能够进行图片的传输。并对系统客户端的功能进行了扩展,增加了音乐的播放功能。本文首先分析了Android系统的研究背景,介绍了当前手机操作系统、入了软件的发展现状,从不同角度说明本文的研究目的和研究意义并介绍了本文的主要内容。然后对系统开发平台Android进行了详细的分析,介绍
32、了Android的特征、Android的架构以及Android应用的构成和工作机制,对软件的运行设计流程进行了详细的分析,对Android客户端从客户端界面,图片浏览模块,界面跳转模块,代码的实现进行描述,最后是结论部分,总结了本文的主要研究内容和研究成果,分析了存在的问题。本文在Android平台以及在该平台上开发手机网络辆智能管理平台查询软件上做了大量的工作,但因个人能力有限,还有很多问题需要解决,现对未来能够进行的工作做出以下几点展望:(l)本文实现的网络辆智能管理平台查询客户端是基于Android平台进行开发的,可是还未能真正解析Android的精髓,系统的界面设计也不是很完善,对An
33、droid平台进一步研究,能够使系统在设计方面更加快捷和完善。(2) 本文所开发的系统当前还只是在模拟器上进行运行,还有待移植到真机上进行进一步研究。相信随着研究的进一步深入,这些问题会逐步得到解决。4 参考文献1李观华,范辉.J2ME在移动通信程序中的应用.计算机应用, ,2廖永刚,余冬梅J2ME架构与安全机制的研究.计算机程序设计, , 3张培仁,基于C语言编程单片机原理与应用,电子工业出版社, 4Ed Burnette. Hello,Android:Introducing Googles Mobile Development Platform.Pragmatic Bookshelf, 5
34、阎石编,数字电子技术基础,高等教育出版社, 6康光华,模拟电子技术基础,高等教育出版社, 7王勤,计算机控制技术,机械工业出版社, 8普埃克等著,李锵等译,通信系统原理(美),电子工业出版社, 9刘令普,数字信号处理,哈尔滨工业大学出版社, 10夏靖波,嵌入式系统原理与开发,西安电子科技大学出版社, 11庞特,C语言嵌入式系统开发,中国电力出版社, 12Saint-Andre,P.Streaming XML with Jabber/XMPPJ.In Internet computing,IEEE, 13胡伟,ARM嵌入式系统基础与实践,北京航空航天大学, 14孙秋野 孙凯,ARM嵌入式系统开发
35、典型模块,人民邮电出版社, 15肖峰 陈爱国,无线数据采集模块设计J,现代电子技术, 致谢这次毕业设计是在xxx老师的悉心指导下完成的,xx老师对学术的严谨和精益求精的工作作风给我留下了深刻的印象,受益匪浅。在做毕业设计这几个月时间里,导师为我创造了优越的学习和实践环境,使我获得宝贵理论知识同时又在实践中不断提高自己。在思想上和人生态度上指导老师的谆谆教诲,在我今后的学习和工作中将不断影响并激励我。由衷感谢这次和我一起做设计的同学,这对我完成本次论文提供了各种有益建议和帮助,使我的论文在讨论中不断获得进展。另外,感谢xx学院给我提供的良好环境,感谢我的亲人,在她们的帮助和关怀下才得以完成学业。最后,再次感谢我的导师和曾经帮助过我的所有老师,衷心地感谢为评阅本论文而付出宝贵时间和辛勤劳动的老师们!本资料由论文之家:.com 提供,下载或转载请保留出处。