毕业设计基于android的课程表开发的设计与实现整理版.docx
- 文档编号:11852516
- 上传时间:2023-04-06
- 格式:DOCX
- 页数:12
- 大小:106.43KB
毕业设计基于android的课程表开发的设计与实现整理版.docx
《毕业设计基于android的课程表开发的设计与实现整理版.docx》由会员分享,可在线阅读,更多相关《毕业设计基于android的课程表开发的设计与实现整理版.docx(12页珍藏版)》请在冰豆网上搜索。
毕业设计基于android的课程表开发的设计与实现整理版
5目录
基于android的课程表开发
摘要:
在科学技术高速发展的今天,手持终端设备已经从接打电话的简单功能,跨越到音乐,影音,游戏,商务多种功能。
原始的通信传输已经满足不了,当今高速发达的信息社会人们的需求。
Goole公司开发的Android顺应时代而生,Google看到了智能手机市场上的商机,搭载Android操作系统的手机一经上市,短短三年时光,Android发展的之迅速,让苹果(ios),诺基亚(塞班),黑莓(BlackBerry)这些手机望族们完全措手不及。
据2012年2月数据显示,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为68.4%。
Android系统也从1.5发展到2.4,以及平板电脑系统3.0。
总结android发展在原因主要是因为它拥有五大特点:
一、开放性,二、挣脱运营商的束缚,三、丰富的硬件选择,四、不受任何限制的开发商,五、无缝结合的Google应用。
关键字:
androidandroid特点google
引言
随着手机的不断发展,拥有智能手机已经不再是奢侈昂贵的象征。
在智能手机的争夺战中,Android不得不说是减低智能手机价格的一大功臣。
Android系统是谷歌公司开发的免费开源的移动终端操作系统,适合于手机和平板电脑。
开始动摇苹果手机走高端客户大局势。
也动摇在手机市场在长久以来在分割局势。
当今,智能手机所搭载的智能手机操作系统平台大致如下:
(1)SymbianOS。
搭载在具有广泛群众基础的Nokia手机上,并以此占据了智能手机的半壁江山,其主要的智能平台为大部分诺基亚手机搭载的的S60系列和索尼爱立信手机搭载的UIQ系列;
(2)WindowsMobile。
Microsoft在桌面系统获得成功之后,觊觎手机的巨大市场开发的智能手机系统,因其界面和桌面windows系统较为接近和其强大的微软后台,成为国内市场占有率紧跟Symbian之后成为国人比较喜欢的操作系统;
(3)MacOSX(iPhoneOS)。
苹果一直都是个性和时尚的代名词,受广大中高层次手机用户的喜欢。
iPhone,以其酷炫的UI和独特的操作方式,给传统手机带来一场革命,同时也给Symbian和WindowsMobile带来巨大冲击的;
(4)Blackberry。
以商务应用为主,在国外尤其是欧美等地,受到商务人士欢迎的BlackBarry占据了近一半的无线商务电子邮件业务市场,就连美国总统奥巴马也使用该品牌的手机。
但是在国内还是受到一些基础设施的制约,所以在国内市场不是太好;
(5)PalmOS。
专门为PDA开发,一度占据了90%的PDA市场的份额,虽然其并不专门针对于手机设计,但是以其优秀性和对移动设备的支持同样使其能够成为一个优秀的手机操作系统。
(6)Linux。
对于Linux系统,想必很多人都不会太陌生,桌面系统中以其开源的特性,赢得了不少用户的喜爱。
智能手机平台的Linux同样具有源代码开放、软件授权费用低、应用开发人才资源丰富等优点,便于开发个人和行业应用。
但是因为其平台上的应用少而不被国人所接受。
(7)GoogleAndroid。
自2007年推出,2008年第一部搭载Android系统的G1上市至今不到短短三年时间,他已被许多人接受并且认可及欢迎。
1Android的系统研究
1.1Android平台介绍
Android从诞生到现在也不过4年的时间,但是也就是在这短短的3年内Android创造了一个迅速被人们知晓并追捧的奇迹。
2007年11月5日,Google与其他33家手机制造商(包含摩托罗拉、宏达电、三星、LG)、手机晶片供应商、软硬体供应商、电信业者所联合组成的开放手持装置联盟(OpenHandsetAlliance),发布了名为Android的开放手机软硬体平台。
该联盟的成员宣布日后都会在Android平台上开发他们的新的业务。
不久之后的2008年9月24日,T-Mobile公司首度公布第一台Android手机(G1)的细节,同日Google也放出了AndroidSDK1.0rc1。
这样Android进入了人们的视线。
Android以其特有的开放性优势越来越受到人们和智能手机厂商的关注。
对于第三放软件开发商来说,Android是一个真正意义上的开放性移动设备综合平台,Android系统是免费向开发人员提供的,这样就避免了开发中专利权的障碍。
因此,就能够为第三方软件开发商省下大笔资金。
对于设备制造商来说,Android是一个免费的平台。
当设备制造商每制造一台手机时,那些支付给手机系统制造商的费用也省去了,这样也降低了每台手机的生产费用,同时就降低了手机的价格,这样在市场上也提高了竞争力。
对硬体开发厂商来说,Android也是个开放的平台。
使用Android平台的厂商可以更具自己的需求以及能力为Android开发具有该厂商特色的功能,但是这样的增加完全不用考虑版权的问题。
同时Android平台支持各种先进的网络、绘图、3D处理能力,可以用来提供更好的使用者体验。
GoogleAndroid系统作为一个完全开源的操作系统,是由操作系统(Linux)、中间件以及核心应用程序组成的软件栈(softwarestack)。
通过androidSDK提供的API以及相应的开发工具,程序员可以很方便的开发android平台上的应用程序。
其整个系统由应用程序(Application),应用程序框架(ApplicationFramework),应用程序库(Libraries),Android运行库(AndroidRuntime),Linux内核(LinuxKernel)五个部分组成。
Android操作系统内置了一部分应用程序,包括电子邮件客户端、SMS程序、日历、地图、浏览器、通讯录以及其他的程序,值得一提的是这些所有的程序都是用java编写的。
因为应用程序框架使得组件更易于重用,所以开发者的应用程序可以很容易的调用API函数实现我们想要的功能。
在遵守应用程序框架的安全机制约束的前提下,开发者开发的一个应用程序可以使用其他程序所开发的功能。
虽然Android的应用程序是用Java语言开发的,但是Android给应用程序开发者提供了一系列的C/C++程序库,通过Android的一些特殊的设计,我们开发者可以使用这些库,这在后面的叙述中将看到。
现今,Android操作系统已成为许多手机制造商的宠儿,其中包括HTC、索尼爱立信、Samsung、摩托罗拉以及国内的联想、华为、海尔、华禹等。
其中值得一提的是摩托罗拉公司,就在2009年11月凭借其一款搭载Android平台的Droid手机,两个月内就突破百万台,击败了苹果的iPhone3GS,被《时代》杂志评选为“年度最佳科技产品”。
因此告别了两年多的低迷态势,走出了泥潭。
1.2Android构架
1.2.1Android的构架综述
从图2-1中明显的可以看出该系统从下到上包括Linux内核层、Libraries和运行时环境层、应用程序框架层、应用程序层四层结构。
在Android的最下层的操作系统基于Linux2.6内核,往上的中间件包括Libraries和运行时环境层和应用程序框架层两个层次,最上层则是应用程序层。
在Android构架中,可以很明显的看到,底层的Linux内核则采用的是C语言,libraries采用C或者C++,但是应用程序层、应用程序框架层和运行时环境中的Android核心库采用Java语言编写,也就是说Android虽然底层用的是C或者C++但是应用程序的开发则用的是Java。
Google采用这样的模式可能是因为相对于C或者C++,Java的开发周期更短的缘故,这样的话就能在短时间内为Android提供大量的应用软件。
我们知道,作为一个智能手机平台,只有拥有了大量的源源不断的应用程序作为支持,才能受人们的欢迎,从而才能占领市场。
之前Nokia的s60第三版就是一个很好的例子,因此NokiaS60v3的系统才被世人所熟知,并且曾经在智能手机行业占有很大的市场。
而另一个例子就是Linux系统,在所有操作系统中,稳定性和性能上能够和Linux抗衡的系统不多吧,但是在智能手机市场上为什么Linux却可以说是一败涂地,其原因也和其第三方应用少是脱不了关系的。
1.2.2内核层
GoogleAndroid作为一个开源的操作系统其内核采用了同样开源的被业界认为是相当稳定的Linux作为其内核,其中Linux内核包括以下功能模块:
安全(Security)、存储器管理(MemoryManagement)、进程管理(ProcessManagement)、网络堆栈(NetworkStack)、驱动程序模型(DriverModel)等,另外也在给其上层的软件和下层硬件间建立起一个抽象层(AbstractionLayer)。
同时Android在Linux2.6的内核上进行了一些增加和删改,使Linux更加适应ARM平台。
⑴增加了一个基于ARM构架的GoldFish平台作为虚拟机的虚拟CPU。
⑵增加了YAFFS2FLASH系统文件,因此增加了对NANDFLASH支持。
⑶增加了Android相关的驱动。
例如Android的IPC(进程间通信机制)binder,使用这个能使运行的进程为其他进程提供服务;Android的日志系统(Logger)和内存控制台(Ram_console);同时Google还重写了电源管理(Power)
⑷增加了新的共享方式Ashmem(匿名共享内存),多个应用程序可以这种方式共享内存获取信息,为进程间提供大量共享内存,同时为内核提供回收和管理这个内存的机制。
2Android的开发
2.1Android开发工具
前面说过,Android的上层应用程序是用Java语言开发的,同时需要基于Dalvik虚拟机,所以Google公司推荐使用主流的Java继承开发环境Eclipse。
有了Eclipse还不够,因为使用Java语言进行开发,应该有由SUN公司提供的JavaSDK(其中包含了JRE:
JavaRuntimeEnvironment)。
另外,Android的应用程序开发还是和Java开发有一定区别,所以还需有一个Google提供的AndroidSDK。
有了这三个软件就可以开发Android应用程序了。
2.2Android开发平台的搭建
Android开发平台搭建步骤很简单,但是和我们的论文没多大关系,所以具体步骤参见附录1。
当平台搭建好以后需要创建一个AndroidVirtualDevice,这一步是很关键的一步,如果不创建这个AVD的话,在Eclipse中编译运行Android应用程序时就会提示找不到AVD,从而无法编译。
在DOS界面下运行AndroidSDK文件夹中tools目录下的android.bat工具,其命令是androidcreateavd–nameavd15r1–target2,使用这个命令之后会提示是否创建一个AVD,输入yes之后会提示设置AVD的一些属性,如内存信息等。
要说明的是name后面的avd15r1是AndroidVirtualDevice的名字,可以自由选取。
而我起这个名字的意义是avd使用1.5r1版本的SDK。
简单的几步就将Android的开发平台搭建好了,虽然我使用的是Windows7操作系统,但是方法同样适用于Windowsxp等其他Windows平台。
在一个应用程序设计好了以后,点击Eclipse中的run,就可以看到启动了一个叫做avd15r1的Android模拟器,同时,在模拟器中就能找到你所编写的应用程序。
3Android的课程表开发
3.1项目需求分析
一般课程表应该具备课程表第一次运行时候提醒添加数据功能,拥有数据后自动显示当天课程,如果课程变动要求可以进行修改,要求可以查看整个星期的所有课程,并且同样可以时行课程的修改。
3.2项目目录分析
assets文件夹
用来存放静态文件
bin文件夹
classes.dex(在Dalvik虚拟机中说过的编译后java二进制代码)
TimeTable.apk(发布到手机的安装包)
一个包一样的文件夹用于存放编译后的字节码文件
gen文件夹
R.java(用它java可访问独立于java的资源文件,系统自动生成)
res文件夹
drawable文件夹
用来存放图片的文件夹,例如图标
layout文件夹
用来存放布局定义文件,如main.xml
values
用来存放一些变量和参数的文件
src文件夹
存放源文件的文件夹,以后定义的java类和一些代码都放在这个文件夹下
AndroidManifest.xml
3.3系统功能的主要功能实现
3.3.1TimeTable文件:
当天课程的显示
显示功能是用一个Activity来实现的所以ShowTable这个类要继承于Activity这个基类,显示课程表信息。
通过publicvoidonCreate(BundlesavedInstanceState)方法进行进行判断,如果该课程表数据库中有数据,运行时通过系统时间的判断进行今日课程表的显示,否则直接进入修改课程表页面进行课程表的数据添加,点击功能按键,可以进入整个星期课程表的页面,和整个星期课程管理。
3.3.2Showtable文件:
整个星期的课程显示
显示功能是用一个Activity来实现的所以ShowTable这个类要继承于Activity这个基类。
通过onItemClick(AdapterView
>arg0,Viewarg1,intpos,longarg3)方法,进行一个星期列表的先择,通过菜单按钮可以进行整个星期的课程选择和今天课程的课程表的显示。
3.3.4WeekDay:
课程表管理。
显示功能是用一个Activity来实现的所以WeekDay这个类要继承于Activity这个基类。
通过protectedvoidonListItemClick(ListViewl,Viewv,intposition,longid)方法,进行一个星期列表的先择,通过菜单按钮可以进行整个星期的课程选择和今天课程的课程表的显示。
3.3.5Edit文件:
课程表的修改和添加
显示功能是用一个Activity来实现的所以Edit这个类要继承于Activity这个基类。
publicvoidonCreate(BundlesavedInstanceState)进行初始化完成数据库表数据的提取,通过privatevoidwriteTable()调用如果没有添加过数据调用privatevoidSQLIn(SQLiteDatabasedb,String[]C_names,String[]C_addresses),进行数据的插入,否者就是修改文调用privatevoidSQLUp(SQLiteDatabasedb,String[]C_names,String[]C_addresses)进行数据修改。
3.3.6数据库实现:
DataBaseHelper.java与android的SQLite数据库的建立与数据表的建立。
DataBaseInfo.java与Android在SQLite数据库表的访问
总结
通过对Android系统的层次上分析以及借助Android提供的Intent机制的应用开发,增进了我对这个新生的系统的了解。
在对系统方面的研究中,我明白了Android的应用是怎么在系统上运行的。
其中吸引我的地方就是Android的Runtime,在这,我看到了Google设计的Dalvik虚拟机不同于传统Java虚拟机的地方,这个虚拟机在移动终端设备CPU速度低,资源有限的环境下也能很高效率的运行,这无疑也证明了Android这个系统的成功。
还有,Android上层采用了Java语言作为开发,让开发更为简单,可以使JavaSE阵营的开发者不需要花太多的时间便能转投Android阵营,这样自然的为Android开发提供大量的人力资源。
这样才致使Android在短时间内具有大量的应用,同时也使得许多手机生产商使用该系统的原因之一。
在对程序的开发中,我理解了Android的Intent机制在应用上的作用。
一个应用的多个组件通过Intent机制联系在一起,这样各个组件之间的信息交换提高了,而程序的灵活性也提高了,给开发者的创造空间也增加了。
有了GoogleAndroid这些很强劲的优势,我想,在不久的将来伴随着3G的普及,Android必定能改变现在只能手机市场的格局,开辟出一个新的世界。
参考文献
[1]陈昱,江兰帆.基于GoogleAndroid平台的应用程序开发和研究[J].福建电脑,2008(11):
156-157.
[2]杨丰盛.Android应用开发揭秘[M]第一版.北京:
机械工业出版社,2010年.7页
[3]姚昱旻,刘卫国.Android的架构与应用开发研究[J].计算机系统应用,2008(11):
110-1
[4]姚昱旻,刘卫国.Android与J2ME平台间即时通信的研究与实现[J].计算机系统应用,2008(12):
118-120
[5]公磊,周聪.基于Android的移动终端应用程序开发与研究[J].计算机与现代化,2008(8):
86-89.
[6]差沙,地狱男爵.用Android开发手机应用[J].程序员,2008
(1):
25-27
[7]叶达峰.Eclipse编程技术与实例[M].北京:
人民邮电出版社,2006.
[8]张超,王阿川,王智.基于J2ME和J2EE的手机软件的研究[J].黑龙江科技信息,2007(3):
21,201.
[9]刘向辉.基于Java的移动终端中间件的研究与设计[D].华东师范大学硕士学位论文,2005.
[10]刁扣锁.短信息在嵌入式Linux系统中的设计与实现[D].东南大学硕士学位论文,2005.
[11]Android帮助文档
致谢
首先我在这里向养育和培养我的父母表示深深地思念和感谢,再向关心我,帮助我的老师和同学表示感谢!
能顺利圆满地完成我的设计要感谢计算机学院周群彪老师,蔡葵老师,陈正茂老师,吕学斌老师四位老师在毕业设计前期资料搜集,中期毕业设计的撰写,后起毕业设计的修改阶段给予的指导以及宝贵的意见。
Basedonandroidfilesdevelopment
abstract:
Intoday'stechnologyhighspeeddeveloped,holdingtheterminalequipmenthasthesimplefunctionfrompickingupthephone,music,movie,acrosstogame,business,avarietyoffunctions.Theoriginaltransmissionhasbeensatisfiedno,today'shigh-speeddevelopedinformationsocietypeople'sneeds.TheTimesGooledevelopmentAndroidisborn,Gooleseesmartphonemarketopportunity,theAndroidmarket,justthreeyearsastherapiddevelopment,Androidandappleto(iso),nokia(bothsaiban),BlackBerry(BlackBerry)thesephonespedigreeweretotallyunprepared.Android1.5development2.4from,andtabletcomputersystem,summarizesthedevelopmentofAndroid3.0inreasonmainlybecauseithasfivecharacteristics:
firstly,openness,2,thefetter,breakoperatorsthreeorrichhardwareoptions,four,withoutanyrestrictionsdevelopers,five,seamlesscombinationofGoogleapplications.
Keyword:
androidandroidfeaturesGoogle
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 基于 android 课程表 开发 设计 实现 整理