计算机科学技术专业基于Android平台的手机软件开发.docx

上传人:b****3 文档编号:5135999 上传时间:2022-12-13 格式:DOCX 页数:32 大小:1.64MB
下载 相关 举报
计算机科学技术专业基于Android平台的手机软件开发.docx_第1页
第1页 / 共32页
计算机科学技术专业基于Android平台的手机软件开发.docx_第2页
第2页 / 共32页
计算机科学技术专业基于Android平台的手机软件开发.docx_第3页
第3页 / 共32页
计算机科学技术专业基于Android平台的手机软件开发.docx_第4页
第4页 / 共32页
计算机科学技术专业基于Android平台的手机软件开发.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

计算机科学技术专业基于Android平台的手机软件开发.docx

《计算机科学技术专业基于Android平台的手机软件开发.docx》由会员分享,可在线阅读,更多相关《计算机科学技术专业基于Android平台的手机软件开发.docx(32页珍藏版)》请在冰豆网上搜索。

计算机科学技术专业基于Android平台的手机软件开发.docx

计算机科学技术专业基于Android平台的手机软件开发

本科毕业设计(论文)

 

题目:

基于Android平台的手机软件开发

基于Android平台的校园通软件

学院:

数理与信息工程学院

专业:

计算机科学与技术

学生姓名:

学号:

指导教师:

职称:

合作导师:

职称:

完成时间:

成绩:

浙江师范大学本科毕业设计(论文)正文

目录

摘要1

Abstract2

1引言3

1.1国内外手机系统现状3

1.1.2国内外手机应用现状4

1.2发展趋势5

2Android的相关技术介绍及分析6

2.1Android的功能特征6

2.2Android架构分析8

2.2.1应用程序框架8

2.2.2类库9

2.2.3Android运行时组件10

2.3Android应用的构成和工作机制10

3Android应用程序结构剖析11

3.1Android的API11

3.2Android应用程序结构解析12

3.2.1活动12

3.2.2意图接收器13

3.2.3服务13

3.2.4内容提供者13

3.3Intent的详细解析14

3.3.1Intent的抽象描述14

3.3.2Android如何解析Intent15

3.4Android活动的生命周期16

3.4.1活动的生命状态16

3.4.2活动的运作流程18

4Android校园通软件的设计与实现19

4.1研究目标19

4.2需求分析19

4.3UI界面设计19

4.4程序模块设计20

4.5软件功能图21

4.6文件结构与用途21

4.7程序主要代码23

4.8用户界面27

5总结30

参考文献31

 

基于Android平台的校园通软件

数理与信息工程学院计算机科学与技术黄舜(10191118)

指导老师:

丁革建(教授)

摘要:

随着智能手机一步步走进普通人的生活,它将成为人们获取信息的主要设备。

因此,手机的娱乐应用服务将会有很大的发展空间,校园资讯软件就是其中之一。

Android平台提供给用户非常方便的数据查阅功能,这将为校园资讯软件的设计与实现提供了更好的平台。

另外,Android平台基本上是免费的,所以能够有效降低软件的成本,最终让每个用户能够自由地获取信息,也为手机校园资讯服务的普及做出贡献。

本文对目前应用的Symbian、WindowsMobile、MacOSX和RIM等平台的现状进行了分析与比较。

进而研究分析了Android平台的系统架构和组件模型,接着解析了Android中的重要API和应用构成,以Intent和生命周期的机制。

在此基础上,基于Android平台设计和开发校园资讯软件。

本系统界面友好、操作便捷,具有良好的可扩展性和可维护性;系统经过测试,可以稳定运行,能够满足手机用户的基本需求。

 

关键词:

Android;Java;校园资讯;Intent;布局

 

ACampusInformationSoftwarebasedontheAndroidoperatingsystem

Name:

ShunHuangNo.:

10191118Director:

GeJianDing

(CollegeofMathematics,PhysicsandInformationEngineering,ZhejiangNormalUniversity,Jinhua,P.R.China)

Abstract:

WiththeMobilePhoneentersintothelivestepbystep,itwillbecomethemaindevicetoobtaininformation.ServicesofmobilePhonewillhavegreatdevelopmentspace,CampusInformationisoneofthem.AndroidplatformoffersusersveryconvenientCampusInformationthefunction,ThiswillbeforCampusInformationthedesignandimplementationofserviceprovidesabetterplatform.Inaddition,Androidplatformisbasicallyfree,socaneffectivelyreducethesoftwarecosts,Finallyleteachuserwillbefreetogetinformation,AlsoforthepopularizationofmobilephoneCampusInformationtheservicecontribution.

ThispaperdiscussesthepresentapplicationofSymbian,WindowsMobile,MacOSXandRIMsituationofsuchplatformareanalysedandcompared.FurtherresearchandanalysisoftheAndroidplatformsystemarchitectureandthecomponentmodel,thenanalyzestheimportantAndroidAPIandtheapplicationform,withIntentandlifecyclemechanism,onthisbasis,designanddevelopmentofmobilephoneCampusInformationthesoftwarebasedontheAndroidplatform.Thissystemfriendlyinterface,Convenientoperation,Hasgoodexpansibilityandmaintainability;aftertestofsystem,canstableoperation,Tomeetthebasicneedsofmobilephoneusers.

 

Keywords:

Android;Java;CampusInformation;Intent;Layout

1引言

目前随着移动设备越来越普及以及移动设备的硬件的提升,移动设备的功能越来越完善,移动设备的系统平台也日渐火热起来。

目前国内最常见的移动开发平台有Symbian,iPhone,WindowsPhone以及当下正在逐步兴起的Android。

目前为止国内已经有很多Android系统的用户。

截止2010年第二季度Android系统的国内市场占有率已经过10%,在西欧以及北美智能手机市场占有率也在20%左右。

可见Android系统正在崛起之中。

但是对于Android系统的应用和开发在国内仍然属于起步和探索阶段。

急需要大量的相关技术和人员的投入。

下面首先介绍一下Android系统。

Android是基于Linux内核的软件平台和操作系统,是Google在2007年11月5日公布的手机系统平台,早期由Google开发,后由(OpenHandsetAlliance)开发。

它采用了软件堆层(Softwarestack,又名以软件叠层)的架构,主要分为三部分。

低层以Linux核心工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程式的一部分。

因为兴趣和挑战,我开始自学android编程,通关指导老师的帮助完成了校园通软件。

希望通过这篇论文的研究,展示我在校期间学习与实践的成果,希望给在浙师两年的本科学习交上一份圆满的答卷。

1.1国内外手机系统现状

目前国外各软硬件厂商已经推出过多款手机操作系统。

下面简单介绍一下现主流手机操作系统。

现阶段使用较广泛大家也相对熟悉的手机操作系统是由诺基亚公司主导推出的Symbian操作系统。

Symbian是为手机而设计的操作系统,它是一个实时性,多任务的纯32位嵌入式的操作系统,具有低能耗,内存占用较少等特点。

现在流行的Symbian系统有以下四个版本,分别为S40、S60(第二版)、S60(第三版)、S60(第五版)。

S60(第五版)为触摸屏手机版本。

iOS是由苹果公司为iPhone开发的操作系统。

它主要是给iPhone、iPodtouch以及iPad使用。

就像其基于的MacOSX操作系统一样,它也是以Darwin为基础的。

iOS的系统架构分为四个层次:

核心操作系统层(theCoreOSlayer),核心服务层(theCoreServiceslayer),媒体层(theMedialayer),可轻触层(theCocoaTouchlayer)。

系统操作占用大概240MB的存储器空间

WindowsMobile系列操作系统是从微软计算机的Windows操作系统演化而来的。

WindowsMobile系列操作系统功能强大,而且支持该操作系统的智能手机大多数都采用了英特尔嵌入式处理器,主频比较高,在其它硬件配置(如内存、储存卡容量等)上也比采用其它操作系统的智能手机要高出许多,因此性能比较强劲,速度比较快。

PalmOS属于Palm公司开发,是一种32位的嵌入式操作系统,是一套专门为掌上电脑编写的操作系统,是一种轻量级、比较开放的操作系统,占用的内存非常小。

现在多用Paml公司生产的手机上。

该系统允许用户在其基础上编写和修改相关软件,使支持的应用程序更加丰富多彩。

Palm系统与其他手机系统相比在其它方面也还存在一些不足,如Palm操作系统本身不具有录音、MP3播放功能等,但是可以通过加入第三方软件或硬件设备来实现。

相对国外手机系统百花齐放的局面,国内手机操作系统则处于刚起步的阶段。

目前国内还没有自主研发并商品化的手机操作系统。

当然近些年来国内企业和我国政府在这方也投入了大量的人力和物力。

同时也取得了一定成果。

在2009年8月,由中国移动所主导开发OPhone平台面世。

OPhone平台采用开源的Linux作为系统内核,借鉴并兼容Android平台,集成灵活高效的Java应用框架,充分借鉴当下主流手机操作系统所具有的良好用户体验,提供了一套完整的电话解决方案和各类移动数据业务解决方案。

1.1.2国内外手机应用现状

随着3G在中国的全面启动,它所带来的巨大机遇和新生力量,大规模的网络建设正不断深入展开。

但不可否认的是我国在通信领域中相比许多发达国家仍然存在着不小的差距,就在国人还在为EDGE这种传输速度仅能达到384KB/秒的2.75G过渡技术而欣喜的时候,国外早已开始试行HSDPA这种3.5G技术,传输速度更可达到惊人的数兆每秒,而基于其上所开发的延伸功能更是数不胜数,所以国内外手机应用也存在的较大的差异。

但国内外对手机应用的需求方向是大致相似的,主要集中在信息服务,娱乐,学习这些方面。

目前国内外手机应用服务方向主要有基于地理位置的信息服务(LocationBasedServiceLBS)它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标),在GIS(GeographicInformationSystem,地理信息系统)平台的支持下,为用户提供相应服务的一种增值业务。

例如手机定位,导航服务。

 

近年来十分热门的网络社交服务(SocialNetworkingServices)也已进入到手机客户端领域。

例如国内有名的社交网站人人网已经针对Iphone,android,塞班等手机平台推出了手机客户端。

国外最大的社交Fackbook也已经传出正在进行针对手机的产品的研发。

Twiter,Myspace等国外知名社交类网站都已经推出手机版。

国内淘宝网旗下口碑网在今年也已经推出针对多个手机平台的客户端程序。

MSN,QQ等即时通信类的应用也已经在各个主流手机平台推出。

手机办公类软件在手机上也正日趋完善,在手机上编辑查看各类文档已经实现,在android平台上的QuickOffice就是这样的软件。

在GoogleMarket(一个谷歌针对android系统用户所开发的应用商场)上已经有过万的企业应用办公套件。

手机娱乐游戏类应用,该类应用作为传统类手机应用,在各个平台上发展已近相对完善,手机上对各种流媒体的播放也已完美的支持。

各类传统PC游戏厂商进入手机领域。

1.2发展趋势

随着3G应用的不断开发推广,用户会越来越需要更加个性化、优质化的多媒体数据服务,用户希望能够随时、随地无缝利用3G网络进行办公、网上交易、游戏娱乐、欣赏影视节目、收听和下载音乐等。

根据观察,在不久的将来,移动手机终端将会在以下若干方面具有新的发展。

首先,提供智能提醒服务,手机能够与用户实现密切配合,并监控用户的个性化设置(保持在本地或者云端),当重要时间点或关键事物需要用户注意时,手机会向用户发出“提醒”服务,服务包括日程提醒、交通状况、最佳行车路线、最佳泊位、优惠活动、实时新闻、体育赛事、天气情况、股市行情、好友活动、亲友生日等。

其次,提供虚拟现实体验,手机可以借助传感器、周边设备了解到您的身边环境,并根据收集到的信息,智能的为您提供有用的信息,如在网络世界养的宠物,可以借助音频设备表达叫声,借助马达和位置传感器等传递其跳、跃等行为信息;也可以在用户购物时,提供相关的同类产品价格参考,提醒用户附近的那个卖场更物美价廉;根据实际场景,为用户及时提供正在操控的产品的使用方法提醒。

接着,发挥物联网的优势,借助无处不在的传感器,可以感知并分享到周围世界的海量信息,这些信息将在“云端”得到整合,帮助用户及时、准确的获得气息信息、交通路况。

另外借助物联网,用户间可以方便、快速的分享资源,协助和交互。

如进行端到端的多人游戏、照片分享、书籍分享、音乐分享等。

然后,作为经济工具,在交通或者信息不发达的情况下,帮助用户找到最佳的市场,获得有价值的帮助信息,帮助用户从事的经济活动的收益率。

最后,更加智能、安全的设备,随着智能手机的不断普及和更加智能,手机软件的更新、升级将会变得越发简单,并会为用户提供工具或信息,让用户有能力和权力决策那些内容可以浏览、下载或分享。

在安全性上也将更加出色,能够十分有效的帮助用户进行获取到的内容的管理,保护用户的个人隐私和基于手机的金融活动如电子钱包、在线支付、在线贸易等。

2Android的相关技术介绍及分析

2.1Android系统架构研究

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

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

2.1Android的功能特征

(l)应用程序架构:

在应用程序架构内已经具备多种不同的基础组件,在开发应用程序时,就可以直接调用这些组件来使用,可以节省开发应用程序的心力及时间。

(2)Dalvik虚拟机器:

在Android平台上所使用Java虚拟机,不是Sim公司的标准Java虚拟机,而是使用Google自主开发的代号为Dalvik的虚拟机,它在保证API方面的兼容的同时,针对移动手机进行了大幅优化,占用资源更小,运行效率更高。

(3)集成的浏览器:

集成的浏览器是Android内建的浏览器,是以WebKit的浏览引擎为基础所开发成的。

WedKit是一个开源浏览器网页排版引擎,目前使用WebKit引擎的浏览器主要有:

Safari,Midori,Epiphany等。

配合Android手机的功能,可以在浏览网页时,达到更好的效果,例如:

局部性的缩放网页上的资讯、触控式的操作等效果。

(4)优化的绘图能力:

在程序里可以用到的绘图功能分为2D与3D两个方面。

在2D方面,Android提供了一套特有的类库(SGL;而在3D方面则是使用OpenGLES1.0(openGLforEmbeddedsystems)规范的类库。

它们是一种非常快的图形引擎,并且支持硬件加速。

(5)SQLite数据库:

SQLite提供结构化的数据存取。

SQLite是一款轻型的数据库,它的设计目标是嵌入式的,目前已经在很多嵌入式产品中使用了它,它占用的资源非常低。

它能够支持Windows/Linux/Unix等主流的操作系统,同时能够跟很多程序语言相结合,比如php,Java等,还有ODBC接口,同样比起Mysql,PostgreSQL来讲,它的处理速度比它们都快。

它无需安装和管理配置,它是一个储存在单一磁盘文件中的完整数据库,体积小只有250KB但支持数据库大小至2TB。

它虽然很小巧,但是支持的SQL语句毫不逊色于其它开源数据库。

同时它还支持事务功能和并发处理等等。

SQLite也是一套开放性的关联式资料库,其特点在于轻量性方面的设计结构,更适合在手机上使用。

(6)多媒体的支持能力:

主要用于播放媒体文件。

这同时包括对音频(如播放MP3或其他音乐文件等)和视频(如播放从网上下载的视频)的支持,并支持“播放URI地址”(Note:

URI即是统一资源识别地址)模式—在网络上直接播放的流媒体。

另外支持各种通用的静态图像格式,例如:

JPG、PNG、GIF等格式。

(7)GSM技术:

GlobalSystemforMobileCommunications,即全球移动通讯系统,俗称”全球通”,是一种起源于欧洲的移动通信技术标准,是第二代移动通信技术,其开发目的是让全球各地可以共同使用一个移动电话网络标准,让用户使用一部手机就能行遍全球。

GSM技术是属于手机硬件方面的展现,也是在开发Android应用程序时可以突出的特点之一。

(8)蓝牙、EDGE、3G及Wi-Fi:

蓝牙是一种新型、开放、低成本、短距离的无线连接技术,可取代短距离的电缆,实现话音和数据的无线传输。

EDGE(EnhancedDataRateforGSM,Evolution),即增强型数据速率GSM演进技术。

EDGE是一种从GSM到3G的过渡技术,它主要是在GSM系统中采用了一种新的调制方法,即最先进的多时隙操作和SPSK调制技术。

由于8PSK可将现有GSM网络采用的GMSK调制技术的信号空间从2扩展到8,从而使每个符号所包含的信息是原来的4倍。

Wi-Fi(WirelessFidelity),即无线保真技术,与蓝牙技术一样,同属于在办公室和家庭中使用的短距离无线技术。

该技术使用的是2.4GHz附近的频段,该频段目前尚属没用许可的无线频段。

其目前可使用的标准有两个,分别是IEEE802.lla和IEEE802.11b。

这些通讯能力也是属于手机硬件方面的展现,也是在开发Android应用程序时可以突出的特点之一。

(9)GPS:

GlobalPositioningSystem,即全球定位系统,它是一个由覆盖全球的24颗卫星组成的卫星系统。

这个系统可以保证在任意时刻和任何地点都可以同时观测到4颗卫星,以保证卫星可以采集到该观测点的经纬度和高度,以便实现导航、定位、授时等功能。

这项技术可以用来引导飞机、船舶、车辆以及个人。

这个同样也是属于手机硬体方面的体现,也是在开发Android应用程序是可以突出的特点之一。

2.2Android架构分析

图2-1

安卓架构的五个部分

图中显示的是Android架构的五个主要部分。

2.2.1应用程序框架

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

但是,这要受限于应用程序架构的安全机制,使用者以用同样的机制来新增、置换组件。

目前所有的应用程序是由服务及系统来组成,包含有:

(l)一套强大和可扩展的视图系统:

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

(2)内容提供者:

使应用程序可以访问另一个应用程序的数据(如联系人数库),或者共享它们自己的数据。

(3)资源管理器:

提供各种非程序代码的资源让应用程序去使用。

例如:

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

(4)通知管理器:

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

 

(5)活动管理器:

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

例如:

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

(6)视窗管理器:

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

(7)位置管理器:

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

(8)电话管理器:

用来管理用户拨打与接听电话的相关功能。

(9)包管理器:

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

2.2.2类库

在Android中包含一些C/C++的类库,这些类库能被Android系统中不同的组件来使用。

开发者可以通过应用程序框架使用这些功能。

部分核心类库列表如下:

(1)surfaceManager:

主要的功能是让开发者可以去存取/显示系统及管理的功能,在[显示]与[存取操作]间的对应、互动以及实现无接缝的2D/3D多应用程序之间的整合。

例如:

在2D、2D显示上的合成、叠合动作。

(2)3Dlibraries:

主要是依openGLES1.0规范所定义的3D绘图引擎。

该库使用硬件加速(当硬件可用时),可以将硬件的3D功能做最佳化的处理显示。

(3)SGL:

主要是处理有关显示2D方面的绘图引擎。

(4)MediaFramework:

主要是以packetVideo公司的OpenCORE为基础所发展的多媒体类库,该库支持回放和录制大量流行的音视频格式和静态图片。

例如:

MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF等格式

(5)FreeType:

主要是用来显示点阵图和处理向量字形的。

(6)SSL:

(secureSocketsuyer),中文名为“安全套接层协议层”,它是网景公司提出的基于WEB应用的安全协议,当前版本为3.0。

SSL协议指定了一种在应用程序协议(如、Telenet、NMTP和FTP等)和TCP/IP协议之间提供数据安全性分层的机制,它为TCP/IP连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。

它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。

SSL协议位于TCP胆协议与各种应用层协议之间,为数据通讯提供安全支持。

SSL协议可分为两层:

SSL记录协议(SSLRecordProtocol):

它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。

SSL握手协议(SSLHandshakeprotocol):

它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

SSL协议提供的服务主要有:

①认证用户和服务器,确保数据发送到正确的客户机和服务器;②加密数据以防止数据中途被窃取;③维护数据的完整性,确保数据在传输过程中不被改变。

(7

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

当前位置:首页 > 考试认证 > IT认证

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

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