安卓 校园活动论文_第1页
安卓 校园活动论文_第2页
安卓 校园活动论文_第3页
安卓 校园活动论文_第4页
安卓 校园活动论文_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于Android平台的校园活动软件的设计与开发摘 要当今社会的生活节奏越来越快,人们对手机提出的要求也越来越高,由于手机市场发展迅速,手机操作系统也出现了不同种类,现在市场上主要有四种手机操作系统,分别是Windows mobile,Symbian,Iphone os以及谷歌的Android操作系统。其中,拥有开放源代码优势的Android系统有着最大的发展前景。安卓系统是当前移动应用领域广泛使用使用的一种操作系统,它广泛使用在平板、手机及其它移动类电子设备上,由于其系统建立在Linux基础上,使用java语言进行官方编程语言使得它迅速获得普及Error! Referen

2、ce source not found.。本课题设计开发的是应用在Android手机上的校园活动APP软件。所设计的校园活动APP软件采用了Android开源系统技术,在PHP开发环境下,使用PHP语言,具有一些已有校园活动APP软件所不具备的特性。该软件可以通过简单的系统操作来实现物品的交易,在Android系统中能够独立的运行。关键词:Android;PHP;SQLite31ABSTRACTWith the rapid proliferation of smart phones, smart phone operating system market burgeoned. To allow

3、 smartphone users to query the Internet anytime, anywhere service provided by an efficient approach is to expand the application system functionality onto mobile terminals, mobile phone to access Web sites through the mobile network and the Internet and handle a wide range of business. Therefore, th

4、e smart phone application software and services needed to have broad prospects for development. In today's smart phone system when warlords disputes that in 2008 Google launched an open-source smartphone operating system called Android, which uses the Linux kernel, the Open Handset Alliance (OHA

5、) members can use and modify any package SDK, system open-source, it has a good scalability. The software includes the operating system, user interface and applications, namely smart phone all the software needed for the work. Android's biggest feature is its open architecture, not only has a ve

6、ry good development, debugging environment, but also supports a variety of scalable user experience, including rich graphical components, multimedia support and powerful browser. Therefore, software practitioners, Android platform has unlimited appeal. In this paper, on the basis of analysis and dis

7、cussion Android mobile phone software development technology principle, developed to provide better individual billing based on Android platform mobile phone software for the user.Key words: Android; Java; SQLite目录1绪论11.1软件开发背景11.2软件开发意义11.3系统研究内容11.4系统的章节安排22系统涉及技术研究32.1 Android平台简介32.1.1 Android的基

8、本框架32.1.2 Android应用程序结构52.2 Dalvik虚拟机72.3 Android SDK72.4 PHP技术简介82.5 SQLite数据库的简介93系统分析93.1需求分析93.2 可行性分析123.2.1 经济可行性123.2.2技术上的可行性123.2.3软硬件可行性123.2.4操作可行性123.3 系统设计目标133.4 系统结构设计133.4 系统架构类图143.5 系统交互图154系统详细设计164.1 开发环境搭建164.2 流程图的设计194.3 系统设计目标及数据验证214.4 应用功能介绍及相关截图225系统测试与分析275.1 系统测试目的275.2

9、系统测试环境275.3 系统测试方案275.4 系统测试结果与分析27参考文献28致 谢29基于Android的校园活动APP软件1 绪论1.1软件开发背景随着手机硬件快速升级和性能大幅提升 4G 网络逐步推广,移动互联网也在高速发展。在移动互联网日益普及下,网络的资源共享和连通使全球正快速向信息化社会迈进。信息自动化的作用也越来越大,高效 与触手可及的互联网我们从繁杂的事务中解放出来,提高了我们的工作效率与生产力。另一方面,随着移动网络资费下降与网速飞速发展,几乎人人都有手机,都能 廉价接入移动互联网,移动互联网已经成为大多数生活中的一部分。在移动互联网发展逐渐成熟的大环境下,在大学这个高等

10、教育前沿阵地,如何利用手机这终端设备实现校园信息服务获取这一研究很有现实与广泛的研究价值。1.2软件开发意义为了跟上现代日益加快的生活节奏,电子工艺技术也在飞快地发展,手机的功能也因此在不断的丰富,从最开始出现的“大哥大”到现在的商务PDA手机,智能手机,音乐手机等等,手机的功用也从仅仅是简单的打电话发展到了如今能够发短信,听歌,上网.日益丰富的功能更加使得手机和我们的生活紧密的联系在了一起,可以说到了人们已经离不开手机的地步,于是手机的功能也成了人们关注的焦点。目前的手机功能已经无法满足人们的需求,为了满足需求市场上出现了各种不同的操作系统,Windows mobile、塞班和谷歌的Andr

11、oid操作系统是目前市场上最主要的三个手机操作系统。其中Android由于有开发源代码的优势使其成为有最大的发展前景的系统。强大的功能,经济的价格,方便的操作,更重要的是开源性操作系统成就了安卓操作系统的普及。Android平台给第三方开发商提供了一个相当宽泛、自由的环境,能够使其不受种种条条框框的约束,由此可知,这一前提会诱使多少个新颖别致的软件诞生。手机软件特指在手机等各种手持硬件设备上运行的应用程序,这是需要具有一定硬件环境和一定系统级程序来作为运行基础的,能够快速简单便利的使用软件应用。手机软件最大的特点就是能够其随时随地进行操作。手机的大量普及,致使手机软件市场呈现出一种爆炸式的发展

12、的工作状态。1.3系统研究内容选择研究校园活动APP客户端主要是为了解决校园的一些实际问题。在前几年,虽然每人基本都有了个人电脑,但是想随时随地看学校的活动资讯还是比较痛苦的,有些突发通知不能及时知道(比如停水通知等),有些同学想知道讲座信息时间地点安排但苦于没有一个好的平台去浏览。所以本课题致力于打造一款集多 种软件功能于一身的使校园学生的生活变得更轻松、更快捷 和更方便的手机活动APP用以满足广大师生快节奏的学习与生活方式。研发这款校园助手Android 应用,解决同学获取各个校园的活动,实现 APP 在手,掌握校园事。1.4系统的章节安排第一章:系统开发的背景,意义,开发目的和研究内容。

13、第二章:系统涉及到的知识点介绍。探讨各种知识的关键点。第三章:系统分析。对用户需求进行分析,数据库分析以及对可行性进行分析。第四章:系统详细设计。包括数据库的建立,后台服务器的编制,前台程序的编制。第五章:对系统的测试与实施进行安排,列出系统的不足之处。2 系统涉及技术研究本课题的校园活动采用了Android开源系统技术,利用PHP语言对软件进行编写开发,可以让用户实现一些日常的贷款管理功能软件。在系统的开发过程中,涉及到Android 、Php、Android SDK、Dalvik等相关理论及技术,本章将对上述知识进行简要的阐述1。2.1 Android平台简介在这里首先简单地介绍下谷歌的A

14、ndroid操作系统。Google在2007年11月推出了一种新的智能手机平台Android,它是由操作系统、中间件、用户友好界面和应用软件组成的,该操作系统号称是首个为移动终端打造的真正开放和完整的移动软件,该系统一经推出后就引起了业界广泛的关注。Android是一种基于Linux的自由以及开放源代码的操作系统,主要用在便携设备上,安卓和其操作系统一样采用了分层的架构2。由嵌入式Linux和JAVA构成的Android系统能成为目前最具可移植性的移动设备操作系统是其架构和工作原理决定的。2.1.1 Android的基本框架Android作为一个的开源移动设备平台,其软件层次结构如下图所示由L

15、inux Kernel(Linux 内核层)、Android Runtime(Android运行时库)、Libraries(函数库)、Application Framework(应用软件架构)、Application(应用程序)这五部分组成。图2-1 Android的基本架构Linux KernelAndroid系统的内核是Linux Kernel,因此具备Linux内核的包括进程管理,内存管理,网络服务,安全机制等基本功能。内核的主要功能是管理底层设备驱动、并为上层提供服务,是硬件层和软件堆之间沟通的桥梁3。(2)Android Runtime Android的运行时库包含了Java语言的运

16、行时库的大部分功能。而每个Android程序在Dalvik虚拟机上运行,每个Dalvik虚拟机中运行着不同的程序,从而保证了多任务运行,同时解决了系统的安全问题。(3)LibrariesLibraries是Android系统中的重要的组成库文件,C或C+语言在底层编写这些库文件。上一层的应用程序框架层调用这些不同功能的组件,软件开发者通过调用这些组件简单快速的实现自己需要的功能。(4)Application Framework开发者能够方便的实现自己需要的功能主要通过展现给软件开发者的由应用程序框架提供的系统集成的API接口。应用程序框架除了包括能运行软件的基本结构,还有一些新颖的功能,像对内

17、置全球定位系统决定的位置信息的访问等4。手机软件开发人员可以对核心应用程序的 API 框架进行完全访问。该应用程序的架构设计对组件的重用进行简化,相当于任何应用程序都可以公布它的公共模块,任何其它的应用程序也都可以使用该应用程序发布的功能块当然是在遵循框架的安全性限制原则的基础上进行操作。这种应用程序重用机制,用户将可以实现方便、快捷地替换应用程序组件。每个应用程序后面都有相应的服务和系统,包括的组件主要有:a.可扩展的视图(Views):包括列表、栅格、文本框、按钮、可嵌入的Web浏览器用于创建应用程序5。b.内容管理器(Content Providers):能让应用程序去访问另一个应用程序

18、的数据,或者实现数据的共享6。c.资源管理器(Resource Manager):提供像本地字符串、图形和布局文件等非代码资源的访问7。d.通知管理器(Notification Manager):是应用程序可以通过通知管理器在状态栏中显示客户提示信息8。e.活动管理器(Activity Manager):用来管理应用程序的生命周期和提供常用的导航回退9。(5)Applications Applications位于应用程序和用户进行交互的层次,集合了Android自带的一些像联系人管理程序,短消息程序,浏览器等的核心应用程序。所有的应用程序都是通过Java语言编写的,像计算机、浏览器、通讯体、M

19、P3播放器等10。2.1.2 Android应用程序结构Android应用程序开发是目前软件开发的主流。Android 应用程序有三种方式来调用最底层的硬件和服务。接着来介绍的就是Android 的应用开发框架。各种应用的开发依赖于系统提供给开发者的API是Android应用程序的开发用来使用系统资源的。而这些 API 就是属于应用程序开发框架层的,那些系统未提供的API,需要依靠在系统底层用C/C+语言编写代码来开发,然后向Android应用框架提供接口11。Android系统有四大组件,每个组件是一个试图,其中Activity(活动)和Content Provider(内容提供者)是可见的

20、,而Service(服务)和Broadcast intent Receiver(广播接收器)是不可见的。它们只在程序的后台运行。依靠能够激活其它组件的组件来实现通信7。1) Activity(活动) 活动是 Android 构造块中最基本的一种。每一个活动都是一个用户界面。一个应用程序的工作来形成一个整体的用户体验活动,但每一个都是独立于其他的。因此,不同的应用程序可以从这些活动中的任何一个开始。每个活动都会被实现在一个类,这个类继承于基类Activity。安卓的Activity类似于网站的html页面。每个活动可以启动另一个活动以执行不同的动作12。 2) Broadcast intent

21、Receiver(广播接收器和意图)广播接收器负责接受针对在系统范围内的广播和响应广播传送的信息。一个广播接收机响应一个事件。这些广播可能来自安卓本身例如,当广播宣布屏幕已关闭时,表示电量低。应用程序也可以启动广播在一个应用程序中可以有任意数量的广播器在接收,每个广播接收机像广播接收器的一个子类得以实现。启动一个Activity后会进行进一步的交互和处理13。虽然广播接收器不显示用户界面,但有事发生时它们可以通过创建状态栏来提醒用户。3) Service(服务) 服务是安卓的一个组件,在后台运行来执行长时间的操作或执行远程操作且不提供用户界面,只运行在系统的后台。一个活动可以连接或结合服务来运

22、行。(如果服务没有运行,就会启动它)。当连接到服务时,活动可以通过与服务的接口进行沟通,使得服务程序暴露出来。像其他应用程序组件一样,服务组件总是在默认情况下的应用程序的主线程运行。因此对于执行密集或阻塞的操作服务时(可能减慢活动的性能),它通常是启动新线程内的服务14。4) Content Provider(内容提供者)内容提供者提供应用程序之间的数据共享机制。数据可以通过内容提供者和内容提供这的一个子类来实现访问在共享文件系统、SQLite数据库、或任何其他应用程序持久性存储的位置。它定义了支持的数据格式,提供了一套方法,用于让其它应用程序保存或读取内容提供者处理的数据信息。但是,应用程序

23、不会立即调用这些方法,相反,它由一个命名为内容解析器的对象来调用这些方法。内容解析器可以与每一个内容提供者进行交流。内容解析器与内容提供者通过合作管理IPC(内部处理通信)来实现数据的共享15。图2-2 Android的工作流程应用程序不必使用所有的Android组件16。意图可以被应用程序可以很容易地添加,删除和取代,而能够联系在一起工作则靠URI。Android通过权限设置决定的安全模型来操作资源和数据的特征让应用程序更加地安全被使用17。大多数的应用程序之间的安全模式设置和标准的Linux系统相一致,像是给各个应用程序分配不同的UID。 2.2 Dalvik虚拟机安卓运行时包含一组核心库

24、和一个Java虚拟机(Dalvik虚拟机),重新设计和优化了谷歌安卓平台。安卓是在Linux内核层应用运行、Java编程语言编写的,安卓运行环境主要指的是虚拟机技术,即Dalvik。Dalvik虚拟机依赖Linux Kernel来实现一些潜在的功能,例如线程机制和底层内存管理机制。多个虚拟系统可以同时高效地运行在虚拟机上运行。它无需安装和管理配置的优点是Android选择它作为移动终端的嵌入式数据库的一个原因,它支持事务并发处理,而且它的运行速度快于目前流行的大部分数据库。2.3 Android SDK由于使用Java语言进行开发,除了Eclipse外还有由SUN公司提供的包含了JRE:Jav

25、a Runtime Environment的Java SDK。另外,还需有一个Google提供的Android SDK的原因是为了区别Android的应用程序开发还是和Java程序开发。 基于SDK的Android开发仅限于开发Android的应用程序,开发Android最上层的JAVA应用程序包的产品。JAVA语言主要在这种开发环境中被使用,只需对了解API进行了解,不需要涉及硬件以及Android系统的底层。由于可以使用主机的仿真环境,因此有各种成熟的工具可以使用。2.4 PHP技术简介PHP一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor

26、)的缩写。PHP 是一种 HTML 内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。PHP 独特的语法混合了C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速的执行动态网页。它可以比 CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP有自

27、己的优势:(1)成本;(2)数据在服务器上;(3)数据库的大力支持;(4)PHP是最强大的,有最显着的特点,以支持大量的数据库,这使得它更容易编写一个基于网络的数据库的能力;(5)跨平台,跨平台的PHP是一种脚本语言定义的服务器端。 PHP到相应的Web服务器相应的服务,UNIX,LINUX和Windows安装在平台上,并用PHP编写的应用程序可尽快移植到其他的操作系统平台。嵌入在HTML中。无需编译PHP和HTML可以直接插入到内部很容易使用PHP来解释(解释)。(6)它是一个简单的和有效的脚本语言。与Java,Perl,C+等编程语言不同,在PHP的基础上,基本的编程语言来遵守的规则,但它

28、的活动是强大到足以帮助任何类型的网站。(7)网络协议,并支持以下通信协议,被鼓励的方面包括:电子邮件:IMAP,POP3,NMS,SNMP,网络新闻:NNTP分享账号:NIS;国际新闻网:HTTP和Apache,协议LDAP目录,以及与该网络的其他功能。此外,它可以很容易地移植到其他的操作系统,把CGI PHP带回节目的网站上。2.5 SQLite数据库的简介Android系统集成了一个轻量级的数据库:SQLite,SQLite并不像Oracle、MySQL那样的专业数据库,它只是一个嵌入式的数据库引擎专门适合于资源有限的设备上(如手机、PDA等)适量数据存取。它是遵守ACID的关联式数据库管

29、理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起MySQL、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。虽然SQLite支持绝大部分SQL92语法,也允许开发者使用SQL语句操作数据库中的数据,但SQLite并不像Oracle、MySQL数据库那样需要安装、启动服务器进程,SQLite数据库只是一个文件。3

30、 系统分析3.1需求分析需求分析就是分析用户的需要与要求。如果需要评估的结果准确地反映用户的实际需求,这将直接影响到方案设计的整个阶段,而且对系统的使用产生影响。着眼于需求评估是完成调查,收集和研究,并可能受到影响的数据管理和安全信息的需求的过程。一般使用者都相对缺少相关的计算机方面的知识,并且可以确定计算机是否可以为自己做什么,不能做什么,所以无法非常准确的去表达自己的需求,但是他们是最终的用户,他们的需求才是最终的需求,但是技术人员缺少用户的专业方面的知识,不是很容易理解到用户的真正需求,有时候可能还会误解到用户的需求;新的硬件和软件技术的出现也会让系统的业务需求得打变化。所以技术人员必须

31、要使用一些得到的方法来保证可以与用户不断的交流这样才可以确定用户最终的需求。通过与用户不断深入地进行交流,了解到目前系统存在的主要问题。系统要求操作界面要简洁、美观;系统功能完善测试通过,同时系统经常更新。设计学生用户的主要的用例图如下:图3-1 学生用户用例图设计管理员的主要的用例图如下:图3-2 管理员用例图需要研究是从用户分析和细化的信息,在功能和性能上有描述。它是软件开发过程中的第一阶段的一部分,主要任务是要了解你需要什么,什么应做的工作,以确定系统的,因此在目标系统提出完整,准确,清晰,具体的要求,并表示以书面形式唤醒。软件的用户界面是与该对象最直接的接触,包括是否允许用户简单,方便

32、使用,该请求的响应时间,对整体的用户感受有很大落差。3.2 可行性分析可行性分析也称为可行性研究,是基于软件系统多方面调查的基础上,针对新软件的设计开发是否有其必要性和可能性,对新软件的开发从技术、经济、社会的方面进行分析和研究,以防止不必要的投入,保证新应用软件的开发成功,用最低的消耗得到最大的效用,确保解决用户需求问题。该系统的可行性分析包括以下几个方面的内容:3.2.1 经济可行性本安卓校园活动APP软件由于是基于Android手机平台开发的应用软件,因为其平台的开源性和低成本性等内在品质,决定了进行该软件的开发成本较少,开发只需一台智能机及相应的软件。一般的普通用户都有能力承担软硬件费

33、用。3.2.2技术上的可行性从手机移动设备诞生以来,就一直以惊人的速度发展壮大着,在过去的许多年里,手机技术不断更新换代,手机功能也不断的壮大和完善。近年来Android系统由于其众多的优良品质成为了各大手机移动设备厂商的软件开发首选,市场需求也是与日俱增,开发一个基于Android平台的手机安卓校园活动APP软件,是有成熟的开发技术作为支持的,所采用的数据库及编程语言都是通用语言。我们采用的主体开发语言是PHP,数据库可以采用 Android系统自带的SQLite数据库,具有方便快捷的数据库接口设计,所以本系统在技术方面是可行的。3.2.3软硬件可行性该软件的开发是基于Android系统平台

34、的,因此通过相关Android框架开发测试通过的软件均可以在任何手机设备上运行,但前提是手机设备必须是Android操作系统。在手机上只需要有基本的配置即可,不需要大型的系统软件和应用软件来支持。由于该软件是采用系统自带数据库存储数据,因此安装此软件要保证足够的内存空间和手机磁卡空间。所以Android安卓校园活动APP软件的运行在软硬件条件上是可行的。3.2.4操作可行性移动手机设备已经深入人们的日常生活,对于手机的操作人们已经不再陌生,由于本安卓校园活动APP软件有相关的使用说明,因此只要是稍微具有一定理解能力的人都可以简单快速的掌握软件操作。介于本软件界面清晰,操作简单,查找添加数据方便

35、,有完善的异常处理机制,通过触屏方式输入数据信息的方式符合使用者习惯,因此软件在操作性上是完全行得通的6.3.3 系统设计目标在软件需求分析阶段,对于用户的各种需求我们已经做好了详细地分析和软件开发所需要的技术支持,解决了软件功能性即“做什么”的问题,在软件设计阶段,要着手解决“怎么做”的问题。软件设计是一个把软件需求变换成软件表示的过程,系统设计时需注意以下几点:(1)安全性。在当今信息化时代,信息就是基础就是财富,保护信息的安全性十分必要,尤其是作为学校信息更是具有较高的安全性要求。(2)先进性。在充分满足用户需求的前提下,结合当今广泛应用的先进方法进行设计,立足用户需求,开发出符合需求的

36、软件产品。(3)可扩展性。因为管理软件已经逐渐成为人们生产生活生活中不可缺少的手段,而移动智能的各个方面息息相关,所以在软件设计阶段,要充分考虑到软件应用的可扩展性,便于将来软件升级更新,给其他系统留接口,能够友好地与其他系统衔接也是软件设计的原则之一。(4)有效性。有效性主要包括功能有效性,设计的软件一定要最大限度地满足用户的需求,包括用户显式的需求和隐式的需求。3.4 系统结构设计系统的设计模式采用经典的MVC模式,软件的设计思想采用面向对象的编程模式来实现。MVC (Model-View-Controller):M是指逻辑模型,V是指视图模型,C则是控制器。一个逻辑模型可以对于多种视图模

37、型,一种视图模型也可以对于多种逻辑模型。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式,而C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新,这与设计模式中的观察者模式是完全一样。MVC好处:从用户的角度出发,用户可以根据自己的需求,选择自己合适的浏览数据的方式。比如说,对于一篇在线文档,用户可以选择以HTML网页的方式阅读,也可以选择以PDF的方式阅读。从开发者的角度,MVC把应用程序的逻辑层与界面是完全分开的,最大的好处是:界面设计人员可以直接参与到界面开发,程序员就可以把精力放在逻辑层上。而不是像以前那样,设计人员把所有的材料交给开发人员,由开

38、发人员来实现界面。在Eclipes工具中开发Android采用了更加简单的方法,设计人员在DroidDraw中设计界面,以XML方式保存,在Eclipes中直接打开就可以看到设计人员设计的界面。 Android中界面部分也采用了当前比较流行的MVC框架,在Android中:视图层(View):一般采用XML文件进行界面的描述,使用的时候可以非常方便的引入。当然,如何你对Android了解的比较的多了话,就一定可以想到在Android中也可以使用JavaScript+HTML等方式作为View层,当然这里需要进行Java和JavaScript之间的通信,幸运的是,Android提供了它们之间非常

39、方便的通信实现。 控制层(Controller):Android的控制层的重任通常落在了众多的Acitvity的肩上,这句话也就暗含了不要在Acitivity中写代码,要通过Activity交割Model业务逻辑层处理,这样做的另外一个原因是Android中的Acitivity的响应时间是5s,如果耗时的操作放在这里,程序就很容易被回收掉。模型层(Model):对数据库的操作、对网络等的操作都应该在Model里面处理,当然对业务计算等操作也是必须放在的该层的。就是应用程序中二进制的数据。在Android SDK中的数据绑定,也都是采用了与MVC框架类似的方法来显示数据。在控制层上将数据按照视图

40、模型的要求(也就是Android SDK中的Adapter)封装就可以直接在视图模型上显示了,从而实现了数据绑定。比如显示Cursor中所有数据的ListActivity,其视图层就是一个ListView,将数据封装为ListAdapter,并传递给ListView,数据就在ListView中现实。系统构架设计如图3-1所示:图33框架模型图3.4 系统架构类图展开包图,得到类图,它是静态结构图的架构,使各个种类之间的关系,表达了静态联系。安卓校园活动APP软件设计与实现类图如下图3-5所示。图3-4安卓校园活动APP软件系统类图3.5 系统交互图系统架构类的工作流程:1、在用户输入请求后,用

41、户界面对象接收到,并发送一个请求到服务代理对象。 2,业务代理对象接收到请求之后,并向受权限管理对象发送的验证权限请求。 3,权限管理对象把得到的验证权限的结果发给业务代理对象后。 4,根据业务代理对象的验证结果进行以下处理:对权限的要求不符合的则返回消息;符合许可的请求时,该请求被转发到业务对象。 5,业务对象进行业务处理。对于持久性的数据服务操作,操作时通过访问数据库访问对象,任何例外情况的处理都给异常处理对象进行处理。最后,把结果信息返回给业务代理对象。 6,业务代理对象将处理信息返回给用户界面。系统架构类的交互图如图3-5所示:图3-5系统架构类的交互图4 系统详细设计4.1 开发环境

42、搭建这些配置是比较麻烦的。事实上,有麻烦自然也有人解决麻烦,目前已经存在不少PHP工具组合包(有时也称集成开发环境,但是为了与EclipsePHP,Zend Studio等IDE相区分,我们这里称其为工具组合包),能够傻瓜式的完成Apache,PHP,MySQL的一次性自动部署。但是为了更好的理解PHP开发环境的搭建过程以便出现新问题能够快速解决,还是要详细介绍一下手动搭建环境的过程。  手动安装配置Apache、PHP、MySQL 安装配置Apache服务器 一.到Apache官方网站(/downl

43、oad.cgi )下载Apache服务器,目前最新版为2.4.3。但是未提供Windows版本,我们选择使用2.2.14稳定版(包括测试版在内的所有版本下载地址:/dist/httpd/ )。Apache官方提供Windows下的绿色版和安装版两种版本,为了配置和管理方便,我们使用安装版(2.2.14安装版下载地址:二安装Apache服务器,同意协议下一步,一直到Server Information页面。这里需要给出必须的配置参数,包括一个网络域名,一个服务器主机名和一个管理员电子邮箱地址,以及是否使用80端口(We

44、b服务默认端口)的选项。 域名,主机名和邮箱是必须填的,但是可以任意填写,无效的也没问题。选择使用80端口并作为默认服务器。比如如下填写: 三next后,选择安装类型(Typical为默认安装,Custom为自定义安装),选择Typical,next继续。到安装路径页面,我们把安装路径设置为“C:ProgramsApache2.2”:四继续next,直到安装结束。过程中会弹出CMD控制台,不要手动关闭!让其自动关闭。完成后会在系统右下角的状态栏看到Apache绿色三角图标,表示Apache服务正在运行(红色圆点表示停止运行)。  五确认Apache服务器

45、正在运行后,在浏览器地址栏输入http:/localhost后,出现下图表示安装成功:  六完成安装后,其安装路径为:“C:ProgramsApache2.2“。需要说明以下三点: A.Apache的配置文件为“C:ProgramsApache2.2confhttpd.conf”,这个文件很重要。后面会用到。 B.Apache存放html和php等网页文件的位置是:“C:ProgramsApache2.2htdocs”。这表示此目录下的所有网页文件都可以直接在浏览器中通过”localhost/“+文件名的方式访问,而不需要指定绝对路径访问(如htdocs

46、目录下有index.html文件,则可以直接在浏览器地址栏输入localhost/index.html访问)。当然,这个默认路径是可以重新设置的而且也可以指定其他网页存放路径。这些都可以通过配置httpd.conf文件实现。C.启动和停止Apache服务器的方式有: 1.单击开始->所有程序->Apache HTTP Server 2.2->Control Apache Server下的Stop、Start、Restart即可停止,开启和重启Apache服务器。 2.右击计算机->管理->服务和

47、应用程序->服务列表里的Apache2.2即可选择停止或开启Apache服务器。 3.命令行窗口输入”net stop apache2.2“或”net start apache2.2“即可停止或开启Apache服务器。 4.右击状态栏Apache小图标,在Apache Monitor中也可停止或开启Apache服务器。 4.2 流程图的设计登录流程图如图3-3所示:图4-8登录流程图用户密码修改的流程图:图4-9用户密码修改流程图学生用户功能选择的流程图:图4-10学生用户功能选择过程流程图完善个人信息过程的流程图:图

48、4-11完善个人信息流程图 4.3 系统设计目标及数据验证1.将安卓校园活动APP软件软件小型化移动化目前大部分的安卓校园活动APP软件软件都是针对公司的大型软件,但是有求必贷也有刚性需求。大型软件对服务器性能要求较高,普通用户很难达到。对于个人用户来讲,申请贷款需求很简单,对性能要求较低,对方便性要求较高。在此基础上,基于Android的小型软件开发可以满足用户需求。功能简单实用,实时性较好,使用便捷。2.不同用户相互透明同一个客户端可能有多个用户使用,为了保护隐私,在使用本软件时必须注册用户。软件的功能是公共的,数据属于企业私有,对不同用户透明。只有在登录后才可以使用个人数据。3.用户输入

49、数据验证和过滤本系统在用户端页面进行输入验证,主要验证用户输入的内容是否合法,如长度、类型是否非法、关键信息是否漏填等,客户端会弹出提示框提醒用户规范填写,便于用户及时更改。对一些特殊的字符,如:“/”,“#”,“&”等特别的符号进行过滤和替换,防止由于这些特殊字符引起系统出错,增强软件的健壮性。系统采用B/S结构,系统网络架构图见图。图4-12系统网络架构图4.4 应用功能介绍及相关截图1.登陆的实现:用户登录实现的过程主要有几个步骤,首先对用户输入的信息进行保存然后利用程序从数据库中进行检索看是不是有用户输入的信息在数据库中是否存在如果存在就返回正确的结果,如果不正确就返回错误的结

50、果。如果结果数据库中存在就显示登录成功,如果数据库不存在就显示失败请重新登录。已有账号换个客户端登陆时,客户端服务器数据库的数据传输:Web service的通信方式使用标准的Web协议;Web service能够提供多平台的支持。那么,为了获得更多的平台支持,最好也最方便的方法就是实用http协议作为通信协议,这样不仅android移动中端可以访问,pc平台的中端也可以支持,甚至web app也可以使用这一服务。下图是用户登录的功能实现界面:图4-13 用户登录的实现界面2.首页的实现学生成功登陆以后可以在右上角的选项中的列表中选择发布活动,选择活动类型,上传照片,输入活动名称和活动说明,点

51、击发布,发布成功。下图是校园活动APP软件发布活动的功能实现界面:图4-14 校园活动APP软件首页的实现界面3.功能模块的实现学生用户进行功能选择申请后整个数据的流向可以总结为:android向Web Service发起请求(Web Service可以简单理解为是一个网站,而发起请求则可简单理解为是访问一个网址),Web Service根据请求请求数据库并作相应的业务逻辑处理,向android返回数据(返回的数据可以简单认为是访问网址时浏览器看到的网页),android再根据返回的数据进行解析,获取相应的数据返回到用户界面。下图是获取活动功能列表的功能实现界面:图4-15获取活动列表实现界面

52、学生查看活动时可以选择学校后,点击具体活动后可以加入活动或发表评论。下图是加入活动的功能实现界面:图4-16加入活动的实现界面下图是发表评论的功能实现界面:图4-17发表评论的实现界面学生登陆后拥有修改个人信息和登陆密码的权限,修改密码需要输入源密码,同时要输入俩次新密码,如果输入不一致则重置失败。下图是修改个人信息的功能实现界面:图4-18修改个人信息的实现界面5 系统测试与分析25.1 系统测试目的系统测试是将通过确认测试的软件,作为整个基于系统的一个元素,与硬件、支持软件、数据和人员等其它系统元素结合在一起,在实际运行环境下,对系统进行一系列的组装测试和确认测试。系统测试的目的在于通过与系统的需求定义作比较,发现软件与系统的定义不符合的地方,以验证软件系统的功能和性能等。5.2 系统测试环境1)硬件环境: 内存:2G CPU:英特尔 Core i3 330 2.13GHz 笔记本处理器2)软件环境: 操作系统:Microsoft Windows XP 专业版 32位 SP3 浏览器:360浏览器 数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论