基于Android图书管理系统开发最终.docx

上传人:b****6 文档编号:5619233 上传时间:2022-12-29 格式:DOCX 页数:68 大小:2.94MB
下载 相关 举报
基于Android图书管理系统开发最终.docx_第1页
第1页 / 共68页
基于Android图书管理系统开发最终.docx_第2页
第2页 / 共68页
基于Android图书管理系统开发最终.docx_第3页
第3页 / 共68页
基于Android图书管理系统开发最终.docx_第4页
第4页 / 共68页
基于Android图书管理系统开发最终.docx_第5页
第5页 / 共68页
点击查看更多>>
下载资源
资源描述

基于Android图书管理系统开发最终.docx

《基于Android图书管理系统开发最终.docx》由会员分享,可在线阅读,更多相关《基于Android图书管理系统开发最终.docx(68页珍藏版)》请在冰豆网上搜索。

基于Android图书管理系统开发最终.docx

基于Android图书管理系统开发最终

摘要

在科技日益发达的今天,社会竞争越来越强烈,这要求人们不断的获取信息来充实自己。

这就要求人们能随时随地的了解并获取所需的信息。

于此同时,手机的功能越来越强大,将脱离传统的打电话、发短信等基本的功能,在此情况下,图书管理系统也将进入手机,通过手机可对图书管理系统进行操作。

本系统是在Android平台下设计的,在GoogleAndroid平台的SDK2.3环境下,运用Eclipse进行开发。

论文概括的介绍了Android开发的流程,并重点介绍了基于Android平台的图书管理系统的开发过程。

论文首先介绍了课题的研究背景、研究现状和主要研究内容;然后对系统中用到的理论知识和相关技术进行了详细的阐述,同时包括对Android平台的相关理论知识以及系统的详细实现过程。

关键词Android,图书管理,智能手机平台

Abstract

Nowadays,withscienceandtechnologydevelopingincreasingly,thesocialcompetitionhasbecomemoreandmoreintense.Itrequirespeopletolearnandobtainmoreandmoreinformationtheyneedtoenrichthemselveswheneverandwhereveritispossible.Atthesametime,mobilephoneisbecomingmoreandmorepowerfulthanthosetraditionalphoneswhichcanonlyprovidebasicfunctionssuchasSMS.Underthesecircumstances,BooksManagementSystemwillalsoutilizemobilephonesasatool,throughwhichBooksManagementSystemcanberandomlyoperated.

ThissystemisdesignedundertheAndroidplatform,runundertheenvironmentofGoogleAndroidplatformSDK2.2,anddevelopedbyuseofEclipse.ThearticleintroducesandgenerallysummarizesthedevelopmentprocessofAndroid,andfocusesontheintroductiontothedevelopmentprocessofBooksManagementSystembasedontheplatformofAndroid.

Thethesisfirstintroducesthebackground,thecurrentstatusandmaincontentsoftheresearch;andthenillustratestheoreticalknowledgeandtechniquesusedinthesystemindetailaswellastherelevanttheoreticalknowledgeanddetailedrealizationprocessoftheAndroidplatform.

KeyWordsAndroid,LibraryManagement,Intelligentmobilephoneplatform

 

 

第1章绪论

1.1智能手机平台简介

智能手机(Smartphone),是指“像个人电脑一样,具有独立的操作系统,可以由用户自行安装软件、游戏等第三方服务商提供的程序,并可以通过移动通讯网络来实现无线网络接入的这样一类手机的总称”。

在所有智能手机操作系统中,他们之间的应用软件互不兼容。

因为可以安装第三方软件,所以智能手机有丰富的功能。

智能手机的诞生,是掌上电脑(PocketPC)演变而来的。

最早的掌上电脑是不具备手机的通话功能,但是随着用户对于掌上电脑的个人信息处理方面功能的依赖的提升,又不习惯于随时都携带手机和PPC两个设备,所以厂商将掌上电脑的系统移植到了手机中,于是才出现了智能手机这个概念。

智能手机比传统的手机具有更多的综合性处理功能,比如Symbian操作系统的S60系列,以及一些MeeGo操作系统的智能手机。

然而,就新近的发展来看,这些智能手机的类型有相融合的趋势。

智能手机同传统手机外观和操作方式类似,不仅包含触摸屏也包含非触摸屏的数字键盘手机和全尺寸键盘操作的手机。

但是传统手机都使用的是生产厂商自行开发的封闭式操作系统,所能实现的功能非常有限,不具备智能手机的扩展性。

“智能手机(SmartPhone)”这个说法主要是针对“功能手机(Featurephone)”而定义的,本身并不意味着这个手机有多“智能(Smart)”;从另一个角度来讲,所谓的“智能手机(SmartPhone)”就是一台可以随意安装和卸载应用软件的手机(就像电脑那样)。

“功能手机(Featurephone)”是不能随意安装卸载软件的,JAVA的出现使后来的“功能手机(Featurephone)”具备了安装JAVA应用程序的功能,但是JAVA程序的操作友好性,运行效率及对系统资源的操作都比“智能手机(SmartPhone)”差很多。

智能手机具有五大特点:

(1)具备无线接入互联网的能力,即需要支持GSM网络下的GPRS或者CDMA网络的CDMA1X或3G(WCDMA、CDMA-2000、TD-CDMA)网络,甚至4G(HSPA+、FDD-LTE、TDD-LTE)。

(2)具有PDA的功能,包括PIM(个人信息管理)、日程记事、任务安排、多媒体应用、浏览网页。

(3)具有开放性的操作系统,拥有独立的核心处理器(CPU)和内存,可以安装更多的应用程序,使智能手机的功能可以得到无限扩展。

(4)人性化,可以根据个人需要扩展机器功能。

根据个人需要,实时扩展机器内置功能,以及软件升级,智能识别软件兼容性,实现了软件市场同步的人性化功能。

(5)功能强大,扩展性能强,第三方软件支持多。

1.2Android简介

Android一词的本意是指“机器人”,同时也是Google于2007年11月5日宣布的,基于Linux平台开源手机操作系统的名称,该平台有操作系统,中间件,用户界面和用用软件组成,号称是首个为移动终端打造的真正开放和完整的解决方案。

从此,人们不在受PC束缚,无论走到哪里只要有一部Android手机,并且有移动信号,就可以随时随地的进行办公、浏览资讯、网上冲浪、极大地方便了人们的生活。

正因如此,Android仅仅用了3年左右的时间,就迅速的成长为全球第一大的移动终端平台,不仅广泛应用到了智能手机领域,在平板电脑、智能导航仪、智能MP4领域也有很大的影响,深受移动终端生产厂商和广大用户的青睐。

Android基于Linux技术开发,有操作系统、用户界面、应用程序组成,允许开发人员自由获取,修改源代码,也就是说这是一套具有开源性质的移动终端解决方案。

具有以下特点:

(1)开放性

(2)所有的应用程序都是平等的;

(3)应用程序间无界限;

(4)快速方便的应用程序开发。

Android平台采用的是一种被称为软件叠层(SoftwareStack)的方式进行构造。

这种软件底层结构使得层与层之间相互分离,明确各层分工。

这种分工保证了层与层之间的低耦合,当下层的层内或者层下发生改变时,上层应用程序无序任何改变

Android是由5大部分组成,如图2.1所示:

图2.1Android架构的五个部分

(1)应用程序层:

这层中包含了核心的应用程序这些程序都是用Java编写的。

(2)应用程序框架:

应用程序框架除了可以作为应用程序开发的基础之外,也是软件复用的重要手段,任何一个应用程序都可以发布它的功能模块,只要发布时遵守了框架的预订,那么其他应用也可以使用这个功能模块。

(3)函数库:

包含了一套被不同组件所使用的C/C++库集,Android应用开发者不能直接的调用这套库集,但是可以通过它上层的应用程序框架来调用这些库。

(4)Android运行时:

是由Android核心库集和Dalvik虚拟机组成的。

(5)Linux内核:

它提供了安全性、内存管理、进行管理、网路协议、和驱动模块等核心系统服务,除此之外它还是系统硬件和软件叠层之间的抽象层。

1.3图书管理系统简介

随着各图书馆的图书的数量不断增多和图书馆规模的不断扩大,管理这些庞大的体系是非常困难的,因为图书的情况是随时改变的,因此必须对图书进行动态的管理,而这对于一个管理人员来说是一件比较复杂的事情,存储、查询、借阅是必不可少的业务。

基于Android移动设备渐渐的普遍起来,人们逐渐渴望移动办公的实现,即仅仅通过一部智能手机就可以完成大部分的工作量。

为了能让管理员从繁重的工作中解脱出来,让管理员在使用这个软件以后能极其容易且方便的对所有图书进行管理,并且准确无误,轻松自如,因此开发一个图书管理系统软件是当务之急,也是本毕业设计选题的重要意义和研究宗旨。

本软件为图书管理员与学生通过移动平台来查询图书的借阅、预约等情况,方便用户随时查看图书使用情况。

第2章Android的架构分析

Android是一个包含操作系统、中间架构层及应用程序所产生出来的软件堆栈架构。

由下而上,其核心为嵌入式Linux2.6作业系统,向上搭配Google为Android开发的类库及Android运行时,再配合应用程序架构,来开发各种不同的应用程序。

2.1Android架构分析

2.1.1应用程序框架

在AndroidSDK中,定义了可以让开发者使用的与核心程序相同的API,程序框架是为了要简化组件,重新利用而设计的新的框架,应用程序可以发布功能,为其它的程序所使用。

但是,这要受限于程序架构的安全机制。

使用者以同样的机制来进行新增,置换组件。

目前所有的程序是由服务以及系统来组成。

包括:

(l)一套扩展的视图系统:

用来创建一个应用程序的基本组件,包括在开发系统界面的时候,常常使用的列表、网格、文本框、按钮等控制项,甚至是内嵌的Web浏览器。

(2)内容提供者:

可以使应用程序访问到另外一个应用程序中的数据,或者共享自己的数据。

(3)资源管理器:

提供非程序代码资源,让应用程序去使用。

如:

本字符串、图形文件或者排版相关布局文件。

(4)通知管理器:

提供程序在状态栏上显示应用程序自定义提示信息。

(5)活动管理器:

管理所有应用程序的生命周期以及提供的常用的导航回退功能。

如:

启动应用程序就要使用资源准备以及关闭应用程序的时候释放掉的内存以及相关资源等工作。

(6)视窗管理器:

用来管理所有启动的应用程序的视窗。

(7)位置管理器:

用来管理与地图相关的服务和功能。

(8)电话管理器:

用来管理用户拨打或者接听电话的功能。

(9)包管理器:

管理所有安装在Android系统内的安装包。

2.1.2类库

Android包含了一组被Android系统各种组件使用的C/C++类库。

这些类库通过Android应用框架暴露给开发者。

下面列出一些核心类库:

(1)系统C库:

派生与BSD的标准C库(libc)的实现,并且基于嵌入式的Linux设备进行了调整;

(2)多媒体库:

基于PacketVideo公司OpenCORE的多媒体类库,这个类库支持许多流行的音/视格式的回放和录音,以及静态的图片文件,如:

PPEG4、H.264、MP3、AAC、JPG、PNG。

(3)界面管理器:

管理对显示子系统的访问,并且把应用程序与2D和3D图形层无缝的融合到一起。

(4)LibWebCore:

一个现代的Web浏览器引擎,Android浏览器和可嵌入的WebView组件都基于这个引擎。

(5)SGL:

底层的2D图形引擎;

(6)3D类库:

基于OpenGLES1.0API的实现,这个类库既可以是硬件3D加速(如果硬件加速有效),也可以包含高度优化的3D软件光栅处理器

(7)FreeType:

位图和矢量字体渲染;

(8)SQLite:

一个强大的轻量级关系数据库引擎,对所有的应用程序有效。

2.1.3Android运行时组件

虽然Android是用Java语言来开发、撰写应用程序,但却不使用Java运行时组件来执行Java程序,而是使用了由Google自行研发的Android运行时组件来执行程序。

Android运行时组件包含有两个重要的部分,核心类库和Dalvik虚拟机。

2.2Android应用的构成和工作机制

对于一个Android应用程序来说,是由Activity、IntentReceiver、Service、ContentProvider四部分组成,但并不是每一个Android应用程序都必须由这四部分组成。

在应用程序中使用时,需要在配置文件AndroidManifest.xml中进行配置。

这个配置文件是每个Android应用程序所必需的,用于定义应用程序的组件、组件的功能以及必要条件等。

Android应用的构成和工作流程如图2.2所示:

图2.2Android的构成和工作流程

第3章Android应用程序结构剖析

3.1Android的API

AndroidAPI主要包含以下几个部分:

(1)AndroidManifest.xml(清单文件)

AndroidManifest.xml(清单文件)是系统的控制文件,它将要告诉系统将要如何的处理所创建的所有的应用组件(尤其是Activity,Service,IntentReceiver)和内容提供者(ContentProvider))。

举例来说:

清单文件就是把活动和要接收的意图(Intent)连在一起的“胶水”。

(2)活动

活动就是一个具有生命周期的对象。

一个活动就是要完成某些功能的代码块,这部分工作还可以包括对用户UI界面显示。

不过这不是必须有的,有些活动从不显示UI布局。

(3)视图

视图可以将其自身绘制到显示屏上。

Android的用户界面是由一系列的视图组成的。

接口都是由一组视图组成的。

开发者可以通过使用新创新的视图,来使用自定义的图形界面的处理技术。

(4)意图

意图是简单的消息对象,它表示的是程序想做某件事的意图。

比如程序想要显示一个网页界面,那么,它可以通过创建一个意图实例,将值传递给系统来进行表示意图,浏览这个URI。

系统将定位到能够处理这意图的代码,并运行。

意图也用于广播系的有效事件的传递。

(5)服务

服务就是运行在后台的一段代码。

它可以运行在它自己的进程中,也可以运行在其他程序的进程中,这取决于自身需要。

其它组件可以绑定一个服务中取,通过远程AIDL调用这个方法。

比如:

媒体播放器服务,当用户退出媒体界面时,仍然希望音乐可以继续播放,这个时候就可以使用服务来确保当用户关闭界面的时候音乐还能继续播的播放。

(6)通知

通知将以小图标形式展现在状态栏中,用户通过与图标交互,来接收信息。

最常见的通知包括:

短信息,通话记录,语音邮件等,但是程序也可以创建自己的通知事件。

(7)内容提供者

内容提供者是用来提供设备上数据访问的。

典型例子:

使用内容提供者访问联系人。

程序也可以用其它程序的内容提供者提供的数据,同时也可以自定义自己的内容提供者来向别的程序提供数据。

3.2Android应用程序结构解析

通常由四大组件构建一个完整的Android应用程序。

(1)活动

(2)意图接收器

(3)服务

(4)内容提供者

然而,并不是所有的Android程序都必须具备上面的四大组件,可以由上面的一个或几个来进行组建。

当决定使用哪些组件来构建Android程序的时候,需要将它们注册在AndroidManifest.xml(清单文件)中,这是一个XML文件,在文件中可以声明程序组件和它们的要求。

这个配置文件是每个Android程序所必需具备的。

3.2.1活动

活动是以上四大组件中最常用的一个组件。

每个活动都是继承于Activity的子类,并实现了一些各自的功能,如管理UI的显示和UI的事件。

一个活动就相当于程序给用户的一个显示界面,由事件、响应视图等组成。

大多数的程序通常要包括多个界面。

如:

聊天应用程序,应该包含一个联系人的界面、一个聊天的界面、一个设置的界面、一个聊天记录查询的界面等等。

每个界面都可看作是一个活动。

显示一个新的界面就相当于生成了一个对应的活动。

在一些特殊的情况下,一个活动能够给它上级界面一个返回值,如:

提供给用户选择照片的活动,可以返回给调用它的用户照片文件。

当新的Activity(活动)出现时,前一个Activity(活动)被中断,并被放入到一个历史堆栈中。

用户可以使用返回键调用前一个Activity(活动)。

当Activity(活动)不再需要的时候,可以将它们从历史的堆栈中移除。

默认的情况下,Activity(活动)应用程序会把每个Activity(活动)到历史的堆栈中去。

Android应用程序通过Intent(意图)类,来实现界面与界面之间的跳转。

一个Intent(意图)描述了一个程序想要做的事情。

在Intent(意图)的描述结构中,含有两个重要数据:

动作与动作对应的数据。

典型的动作类型有MAIN、VIEW等,而Activity(动作)对应的数据则要用URI的形式展现出来。

除此之外,还有一个被称作意图过滤器的相关类。

当发生一个有效目的请求的时候,意图过滤器就要用来描述这个能够处理什么样的意图。

通常意图过滤器要被注册在AndroidManifest.xml(清单文件)中。

从一个界面转到另外的一个界面是由各种意图来实现的。

随后,这个活动接收到的意图(Intent)的通知并开始进行运行。

当startActivity的方法被调用了,解析这个意图处理过的程也随之发生。

3.2.2意图接收器

开发者可以使用IntentReceiver让自己的应用对一个外部事件做出响应,比如当电话呼入时,或者当数据网络可用时,或者时间到晚上了。

IntentReceiver不能显示用户界面,它只能通过NotificationManager通知用户这些有趣的事情发生了。

IntentReceiver既可以在AndroidManifest.xml中注册,也可以在代码中使用Context.registerReceiver()进行注册。

但是当这些有趣的事情发生时,应用不必对请求调用IntentReceiver,系统会在需要的时候启动应用,并在必要的情况下触发IntentReceiver。

各种应用还可以通过使用Context.broadcastIntent()将它们自己的Intent广播给其他应用程序。

3.2.3服务

服务(Service)也是Android的四大组件之一,它和Activity最为相似,他们都代表可执行的程序,Service与Activity的区别在于:

Service一直在后台进行运行,它没有用户的界面,所以绝不会到前台来,它和Activity一样具有自己的生命周期。

3.2.4内容提供者

在Android中,每个应用程序都有它们自己的ID并且可以在自己的进程中进行执行。

这样做的好处是:

(1)可以保护系统和应用程序,避免被其他不正常的应用程序所影响。

(2)可以把每个进程想像成是一个黑盒子,进程之间不会互相影响,连内存的资料都无法进行共享。

如果应用程序之间要共享数据,就需要用到内容提供者。

内容提供者就是一个类,它实现了一个方法集合,其他的应用程序可以去使用这些方法来保存和检索这个内容提供者处理过的数据。

3.3Android活动的生命周期

Android平台是个手机操作系统。

先把其他功能撇掉不谈,根据手机的特性,就应该能够随时随地的在未完成目前动作时候,暂停正在使用功能,切换到接听电话、接收短信的模式,而且在接听完电话回到应用程序的时候,还希望能看到之前操作一样的内容。

现在用户使用的智能手机大多已经习惯使用能够后台处理的作业系统(比如WindowsMobile),可以在使用手机听音乐的同时,执行其他多个应用程序。

同时执行多个应用程序有它明显的好处,但也有它的缺点。

每多开启一个应用程序,就会多耗费一些系统的内存,而手机里的内存是有限的。

当同时开启的应用程序过多的时候,或者是关闭的程序没有释放掉内存,系统会越来越慢,甚至不稳定,最后到死机。

为解决这个问题,Android引入了一个新的机制:

“生命周期”。

Android应用程序的生命周期是交给Android的框架进行管理的,而不是由应用程序直接进行控制的。

通常,每个应用程序,都会占用一个进程。

当系统内存不足的时候,会依照优先级来自动进行进程的自动回收。

不管是使用者还是开发者,都无法确定应用程序什么时候会被回收。

一个活动类,除了OnCreate(创建)方法之外,还定义了onPause(暂停)、OnResume(继续)等等的基本方法,当一个活动切换到另外一个活动的时候,原来的活动将会经过一连串的状态的改变。

开发者可以在程序中添加一些状态相对应的流程,每次活动状态改变的时候,就会执行相对应的流程的操作。

要让用户有更好的使用体验,活动需要在各个周期内负责保管状态,恢复状态,传送资料的工作。

3.3.1活动的生命状态

Android的虚拟机是使用堆栈来进行管理的。

其主要有四种状态:

(l)活动状态:

活动状态是指用户启动了应用程序或活动结束后,活动运行时的状态。

在Android平台上,同一个的时刻只能有一个活动处于活动或者运行的状态。

其他的活动都会处于未启动,停止或是暂停状态。

(2)暂停状态:

暂停状态是指当活动暂时停止下来的时候,退到背景画面状态。

当警告对话框或者电话到来的时候,都会让原来运行活动退到背景画面中。

新出现的警告对话的框等界面元件盖住掉了原来的活动的画面。

活动处在暂时停止的状态,用户无法与原来的活动互动。

(3)停止状态:

停止状态是指有了其他活动正在执行中,而这个活动己离开了屏幕,不再执行动作的状态。

通过按返回键就可以查看所有处于停止状态应用程序的列表。

处于停止状态的活动还可以通过通知来进行唤醒。

(4)已回收或未启动状态

已回收的或未启动的状态是指活动未被启动或者已经被手动终止的状态。

要手动终止活动,可以在系统中进行调用finish(结束)的方法。

如果是被系统回收的,可能是因为内存不足,所以系统会根据内存不足的回收规则,将停止状态的活动其占用的内存进行回收。

图3.1Android活动生命周期

图3.1所示的七个状态又可以归纳为三组:

(l)资源分配

完整的活动的生命周期是由创建状态开始由销毁状态而结束。

创建的时候分配资源,销毁的时候释放资源。

(2)可见与不可见

当活动运行到启动的状态的时候,就可以在显示屏上看到这个活动。

相反当活动运行到停止的状态的时候,这个活动就会从显示屏上消失。

当用户按下返回键,回到上一个活动界面的时候,会先到重新启动的状态,再到一般启动的状态。

(3)用户取得屏幕的控制权

当有个警告对话框,短信,电话等信息到来的时候,原来活动会进入暂停的状态,暂时放弃对显示屏的控制权,被中断到了背景中去,将前景交给了优先级较高的事件。

当这些优先级较高的事件处理完毕后,活动就会进入继续的状态,此时又

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

当前位置:首页 > PPT模板 > 商务科技

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

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