Android手机消费管理系统的设计与研究本科毕业论文.doc_第1页
Android手机消费管理系统的设计与研究本科毕业论文.doc_第2页
Android手机消费管理系统的设计与研究本科毕业论文.doc_第3页
Android手机消费管理系统的设计与研究本科毕业论文.doc_第4页
Android手机消费管理系统的设计与研究本科毕业论文.doc_第5页
已阅读5页,还剩101页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计(论文)题目:Android 手机消费管理系统的设计与研究学院:专业:年级:学生姓名:指导教师单位:指导教师姓名:指导教师职称:Title:Mobile phone consumption management system design and research based on AndroidFaculty:Faculty of Information, Engineering and AutomationSpeciality:Communication EngineeringClass:2009 CommunicationAuthor:Directors Unit:Department of Communication EngineeringDirector:Directors title:Lecturer毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。矚慫润厲钐瘗睞枥庑赖。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。聞創沟燴鐺險爱氇谴净。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。残骛楼諍锩瀨濟溆塹籟。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。酽锕极額閉镇桧猪訣锥。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日目录摘要v彈贸摄尔霁毙攬砖卤庑。Abstractvi謀荞抟箧飆鐸怼类蒋薔。前言vii厦礴恳蹒骈時盡继價骚。第一章 绪论1茕桢广鳓鯡选块网羈泪。1.1 选题背景1鹅娅尽損鹌惨歷茏鴛賴。1.1.1 课题研究内容2籟丛妈羥为贍偾蛏练淨。1.1.2 课题研究目的2預頌圣鉉儐歲龈讶骅籴。1.1.3 课题研究意义2渗釤呛俨匀谔鱉调硯錦。1.2 Android平台简介3铙誅卧泻噦圣骋贶頂廡。1.2.1 Android平台的优势介绍4擁締凤袜备訊顎轮烂蔷。1.2.2 Android系统开发语言介绍5贓熱俣阃歲匱阊邺镓騷。1.3 Android开发现状6坛摶乡囂忏蒌鍥铃氈淚。第二章 Android开发环境与架构分析7蜡變黲癟報伥铉锚鈰赘。2.1 Eclipse开发环境7買鲷鴯譖昙膚遙闫撷凄。2.1.1 Eclipse的主要构成7綾镝鯛駕櫬鹕踪韦辚糴。2.1.2 其他软件的简介7驅踬髏彦浃绥譎饴憂锦。2.1.3 Eclipse Android环境搭建8猫虿驢绘燈鮒诛髅貺庑。2.2 Android架构分析8锹籁饗迳琐筆襖鸥娅薔。2.3 Android应用的构成和工作机制10構氽頑黉碩饨荠龈话骛。2.3.1 Android应用程序中的资源10輒峄陽檉簖疖網儂號泶。2.3.2 Android的应用程序组件10尧侧閆繭絳闕绚勵蜆贅。第三章 系统需求分析及概要设计13识饒鎂錕缢灩筧嚌俨淒。3.1 研究目标13凍鈹鋨劳臘锴痫婦胫籴。3.2 需求分析13恥諤銪灭萦欢煬鞏鹜錦。3.3 概要设计13鯊腎鑰诎褳鉀沩懼統庫。3.3.1 系统功能模块说明14硕癘鄴颃诌攆檸攜驤蔹。3.3.2 系统基本流程图14阌擻輳嬪諫迁择楨秘騖。第四章 Adapter与数据存储16氬嚕躑竄贸恳彈瀘颔澩。4.1 Adapter16釷鹆資贏車贖孙滅獅赘。4.1.1 Adapter的纽带作用16怂阐譜鯪迳導嘯畫長凉。4.1.2 本地Adapter的解析17谚辞調担鈧谄动禪泻類。4.2 游标(Cursor)17嘰觐詿缧铴嗫偽純铪锩。4.3 数据存储17熒绐譏钲鏌觶鷹緇機库。4.3.1 SharedPreferences存储18鶼渍螻偉阅劍鲰腎邏蘞。4.3.2 SQLite数据库存储18纣忧蔣氳頑莶驅藥悯骛。第五章 系统详细设计与编程实现20颖刍莖蛺饽亿顿裊赔泷。5.1 Android的布局、视图及组件20濫驂膽閉驟羥闈詔寢賻。5.1.1 Android布局20銚銻縵哜鳗鸿锓謎諏涼。5.1.2 Android中的视图21挤貼綬电麥结鈺贖哓类。5.1.3 程序中Android组件21赔荊紳谘侖驟辽輩袜錈。5.2 系统的程序模块设计23塤礙籟馐决穩賽釙冊庫。5.2.1 用户登录23裊樣祕廬廂颤谚鍘羋蔺。5.2.2 欢迎界面24仓嫗盤紲嘱珑詁鍬齊驁。5.2.3 添加账目明细25绽萬璉轆娛閬蛏鬮绾瀧。5.2.4 选择账目类型27骁顾燁鶚巯瀆蕪領鲡赙。5.2.5 查询当前添加记录详细信息28瑣钋濺暧惲锟缟馭篩凉。5.2.6 账目明细29鎦诗涇艳损楼紲鯗餳類。5.2.7 退出32栉缏歐锄棗鈕种鵑瑶锬。5.2.8 菜单功能32辔烨棟剛殓攬瑤丽阄应。第六章 系统测试与功能实现33峴扬斕滾澗辐滠兴渙藺。6.1 运行及基本功能测试情况33詩叁撻訥烬忧毀厉鋨骜。6.1.1 登录及身份验证功能33则鯤愜韋瘓賈晖园栋泷。6.1.2 欢迎界面33胀鏝彈奥秘孫戶孪钇賻。6.1.3 添加账目明细界面及账目类型选择界面34鳃躋峽祷紉诵帮废掃減。6.1.4 保存功能35稟虛嬪赈维哜妝扩踴粜。6.1.5 查询和取消功能35陽簍埡鲑罷規呜旧岿錟。6.1.6 账目明细36沩氣嘮戇苌鑿鑿槠谔應。6.1.7 菜单功能37钡嵐縣緱虜荣产涛團蔺。6.2 运行功能总结37懨俠劑鈍触乐鹇烬觶騮。第七章 结论38謾饱兗争詣繚鮐癞别瀘。第八章 总结和体会39呙铉們欤谦鸪饺竞荡赚。谢辞40莹谐龌蕲賞组靄绉嚴减。参考文献41麸肃鹏镟轿騍镣缚縟糶。附录42納畴鳗吶鄖禎銣腻鰲锬。摘要随着现代社会的高速发展,智能手机得到了越来越广泛的普及。而在智能手机中占有半壁江山的Android智能手机在市场上更是风生水起。Android操作系统由于其采用Linux内核,支持多硬件平台,以及开放性体系结构,不仅具有良好的开发、调试环境,更具有可扩展的用户体验等优点。Android智能手机的发展同时也带动了应用程序的开发,不同的应用程序能够让移动手机实现不同的功能。本文就是围绕Android开发的手机消费管理系统而完成的。通过对Android应用程序开发的学习和研究,开发出以实现手机消费管理为目的的应用程序。本文详细说明了Android应用的系统架构,涉及Android应用开发的相关知识,包括Android UI布局,用户界面事件,多组件技术,Activity切换,数据传输,SQLite数据库等,可实现对事件进行添加,记录,保存,查询,删除等相关功能。本系统是基于Android的基础知识和Java语言来开发的,软件界面显示友好,操作便捷。風撵鲔貓铁频钙蓟纠庙。摘要是提出问题解决问题的精简版,不是研究现状和介绍,图书馆下载对应论文看下别人怎么写摘要,具体做的东西,实现的功能,结构怎样必须有体现不是一个大概的介绍。灭嗳骇諗鋅猎輛觏馊藹。【关键词】Android 布局 Activity 数据传输 Java SQLiteAbstractWith the rapid development of modern society, the popularity of smart phones has been more and more widely. In the smart phone occupies half of the Android smart phone is more popular in the market. Because of Android operating system its use of the Linux kernel, support for multiple hardware platforms, and opening architecture, not only has a good development and debugging environment, but also has the advantages of scalable user experience. Android smart phone also led to the development of application, different applications can make mobile phones to achieve different functions. This article is completed based on the development of Android mobile phone consumption management system. Through the study of Android application development and research, developed the application that in order to achieve the purpose of mobile phone consumption management. This paper described Android application system architecture in detail, involves Android Application Development-related knowledge, including the Android UI layout, user interface events, multi-component technology, Activity switching, data transmission, SQLite database, etc. which can realize to add events, record, save, query, delete, and other related functions. This system is based on the basics of Android and the Java language to develop, friendly software interface, the operation is convenient.铹鸝饷飾镡閌赀诨癱骝。Keywords:Android Layout Activity data transmission Java SQLite前言攙閿频嵘陣澇諗谴隴泸。在手机市场高速发展的今天,智能手机已成为人们生活中的一个重要组成部分。其中,Android操作系统的智能手机更是在手机行业中独占鳌头,放眼望去,几乎90%以上的智能手机都是搭载的Android操作系统,仿佛在智能手机行业中叱咤风云的塞班(Symbian)操作系统一夜之间销声匿迹了。Android智能手机以其全开放的智能平台,多硬件支持以及统一的核心技术越来越受到人们的广泛关注。趕輾雏纨颗锊讨跃满賺。Android 凭借其良好的用户体验,低廉的成本和较高的开放性吸引着越来越多的终端厂商采用。随着Android智能手机厂商的不断增多,Android App的发展速度也是惊人的。因此, Android开发吸引着无数软件开发厂商和开发者投身其中,程序员在以几何级的速度增长。可见,Android App有着广阔诱人的发展前景,其应用程序已得到更多人的认可,受到广泛关注。Android无疑已经成为当今最重要的手机开发平台之一,每天70万部Android手机的激活量直接预示着,其未来的发展格局无疑将成为相关产业竞相追逐的对象和焦点。夹覡闾辁駁档驀迁锬減。所以,学习和研究Android的开发具有十分重要的意义。在互联网高速发达的今天,数以百万计的应用程序不断更新交替。数字化办公,电子商务,网络购物越来越受到人们的青睐,电子消费也逐渐成为一种时尚。在这样的趋势下,消费管理则对我们的生活有着举足轻重的作用。因而,研究相关手机消费管理的应用软件就具有了重要的价值和意义。视絀镘鸸鲚鐘脑钧欖粝。第 xi 页 本次设计就是基于Android的开发平台,利用Java编程语言来开发有关手机消费管理的系统软件。经查阅资料,自学,加上原有的C/C+语言基础,使得对Java语言的理解也不那么困难。通过学习,利用Android开发的页面布局等实现应用软件的UI设计,学习Activity的用法,Android基本组件的用法,界面跳转,数据传输等相关知识,试图完成一个集身份认证,数据添加,数据分类,内容查看于一体的手机消费管理管理系统。下文将对本次设计做详细论述说明。偽澀锟攢鴛擋緬铹鈞錠。第一章 绪论1.1 选题背景随着移动设备越来越普及及移动硬件的提升,移动设备的功能越来越完善,移动设备的系统平台也日渐火热起来。目前国内最常见的移动开发平台有Symbian,iPhone,Windows Phone 以及Android。如今国内外都有非常多的Android 系统的用户。自从2011年第一季度,Android在全球份额首次超过Symbian,跃居全球第一。截止2012年2月,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为68.4%。緦徑铫膾龋轿级镗挢廟。Android是首款开源代码的操作系统,系统的开源性使其具有良好的拓展性,一方面,为众多移动应用开发者提供了良好的系统性平台,有利于移动应用的集合;另一方面,终端厂商可以针对自身的特殊需要“定制化开发”。与此相比,尽管2010年2月,塞班基本完成开源工作,但由于代码臃肿,用户界面设计缺失,塞班的开源并无实际意义,错失发展良机。1騅憑钶銘侥张礫阵轸蔼。 图1-1 Android智能手机从Android这样的发展趋势来看,考虑到如今手机系统的发展现状,以及Android平台系统自身所拥有的优势,Android必将成为主流。因此,学习和掌握Android开发的相关知识,基于Android平台开发一款手机应用软件具有较大的意义和可行性。疠骐錾农剎貯狱颢幗騮。1.1.1 课题研究内容当今社会是数字化社会,人们与电子业务打交道的地方越来越多,网上购物,电子银行,金融投资等等。如何将这些有用的电子业务存储起来避免忘记或丢失,如何对这些信息进行有序地组织、管理以对生活决策提供帮助,这正是手机消费管理软件要解决的问题。本次设计所要实现的功能就是:基于Android软件开发平台,利用Java语言编程,用户可在本软件中添加,管理资金消费动态,可对当前添加的记录实施保存和查询等功能。镞锊过润启婭澗骆讕瀘。1.1.2 课题研究目的通过对当下最受欢迎的Android操作系统的学习,掌握Android软件开发的相关知识和内容,学习Android开发工具,开发平台的搭建和使用,深入学习Android开发设计中页面的布局,组件的使用,Activity的调用,界面跳转,数据添加,传输,保存,查询等相关知识。学习Java编程语言,能对后台数据的传输及实现有更全面的把握和认识。了解当前Android开发的发展状况以及未来的发展趋势,对整个程序的设计和开发过程有所掌握。将理论所学知识应用到实践中,使用多种Android组件完成手机消费管理系统的设计和开发,在实践中来学习并掌握Android开发的基本技能。榿贰轲誊壟该槛鲻垲赛。1.1.3 课题研究意义随着网络技术的发展和普及,方便、快捷、个性化的消费管理已成为时下比较流行的一种管理账务的方式,它的存在与我们的生活是密不可分的。通过本次Android软件的设计,可以使自己对Android开发的基础知识和开发思想有所掌握,并能通过实际操作锻炼自己的动手能力,学会如何去自学自己不熟悉的领域,如何动手完成一个项目,如何将书面知识运用到实际编程中。同时,也可通过本次设计培养自己新知识获取与整理的能力,文献、文档的阅读与翻译能力以及分析问题和解决问题的能力。对自己大学四年的学习有所总结,也培养了自己坚持不懈的精神和品质,为今后的职业发展奠定良好的基础和优良的习惯。邁茑赚陉宾呗擷鹪讼凑。1.2 Android平台简介Android一词本义为“机器人”,是用于移动设备上的一个包含操作系统,一系列中间件,以及部分关键应用软件栈。同时也是Google发布的基于Linux平台的开源手机操作系统,是首个为移动终端打造的真正开放和完整的移动软件。高度的开放性和拥有类似Google这样实力雄厚的公司作为后盾,使Android平台拥有非常丰富的用户体验,Android已经成为全球智能手机市场的领跑者,截至2012年第一季度的市场份额已超过50%(图1-2)。围绕在Google的Android系统中,形成了移植开发和上层应用程序开发两个不同的开发方面。手机厂商从事移植开发工作,上层的应用程序开发可以由任何单位和个人完成,开发的过程可以基于真实的硬件系统,还可以基于仿真器环境。Android Android SDK网站提供了在Android平台上使用Java编程语言开发应用程序所必须的工具和API。目前,该操作系统的最新版本为Android 4.3版本(将于2013年5月份的Google I/O发布),以及还在测试中的Android 5.0Jelly Bean版本。3嵝硖贪塒廩袞悯倉華糲。图1-2 全球智能手机市场份额(按操作系统划分) 从上到下,依次是微软、其他、Symbian、苹果、Android。1.2.1 Android平台的优势介绍(1)开放性Android平台首先就是其开放性,开放的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。开发性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。该栎谖碼戆沖巋鳧薩锭。(2)挣脱运营商的束缚在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从iPhone上市,用户可以更加方便地连接网络,运营商的制约减少。随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。劇妆诨貰攖苹埘呂仑庙。(3)丰富的硬件选择丰富的硬件选择与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容。臠龍讹驄桠业變墊罗蘄。(4)不受任何限制的开发商Android平台提供给第三方开发商一个十分宽泛、自由的开发环境。因此不会受到各种条条框框的阻扰,在这样的情况下,将会产生很多新颖别致的应用软件。但在不受限制的同时,也有其弊端性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android的难题之一。鰻順褛悦漚縫冁屜鸭骞。(5)无缝结合的Google应用如今叱咤互联网的Google已经走过10年的辉煌历史。从搜索巨人到全面的互联网渗透,Google服务如地图、邮件、搜索等已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。为手机接入互联网奠定坚实的基础。4-5穑釓虚绺滟鳗絲懷紓泺。1.2.2 Android系统开发语言介绍在Android系统开发中,开发者可以使用Java作为编程语言来开发应用程序,也可以通过NDK使用C/C+作为编程语言来开发应用程序。在Android系统底层方面,Android使用C/C+作为开发语言,而Android应用层的开发,基本上全部是采用Java开发。Android支持使用Java作为编程语言来开发应用程序,而Android的Java开发方面从接口到功能,都有层出不穷的变化。考虑到Java虚拟机的效率和资源占用,Google重新设计了基于Android的Java,以便能提高效率和减少资源占用,因而与传统的Java有所不同。Java能作为很多系统或程序的开发语言,是因为有其特点和很多的应用,是一门各方面性能都很好的编程语言,它的基本特点是简单、面象对象、分布式、解释的、健壮的、安全的、结构中立的、可移植的、性能很优异的、多线程的、动态的,适合在Internet环境上开发应用系统。9隶誆荧鉴獫纲鴣攣駘賽。1.3 Android开发现状 目前国内的 Android 开发还是主要以应用软件开发为主,主要分成3类:为企业开发应用、开发通用应用(放到 Android Market或者其他App Market 销售)以及游戏开发(放到 Android Market 或者其他 App Market 销售)。浹繢腻叢着駕骠構砀湊。第一类开发者一般身处规模较大的公司,这些公司主要为自有品牌或者其他品牌设计手机或者平板电脑的总体方案。除了根据需求对系统进行定制外,更多的工作在于为这些系统编写定制的应用。鈀燭罚櫝箋礱颼畢韫粝。第二类开发者,一般处于创业型公司或者是独立开发者,他们的盈利方式主要是2种:为国外公司进行外包开发,或者通过Google 的移动广告(AdMob)通过广告点击分成。而理论上的通过付费下载的形式来盈利的,现在国内鲜见成功者。惬執缉蘿绅颀阳灣熗鍵。第三类开发者,目前和第二类开发者类似。下图是开发者提交的 应用和游戏的数目所占的比例图, 从中也可以看出应用开发数目远超游戏开发。贞廈给鏌綞牵鎮獵鎦龐。图1-3 Android开发者分类图第二章 Android开发环境与架构分析2.1 Eclipse开发环境Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(Java Development Tools,JDT)。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。8嚌鲭级厨胀鑲铟礦毁蕲。2.1.1 Eclipse的主要构成 Eclipse主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT和PDE。JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里开始和结束。 薊镔竖牍熒浹醬籬铃騫。Eclipse SDK(软件开发者包)是Eclipse Platform、JDT和PDE所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到Eclipse Platform中的工具。Eclipse SDK由Eclipse项目生产的工具和来自其它开放源代码的第三方软件组合而成。齡践砚语蜗铸转絹攤濼。2.1.2 其他软件的简介(1)JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。JDK 是整个Java的核心,包括了Java运行环境,Java工具和Java基础的类库。JDK是学好Java的第一步。而专门运行在x86平台的Jrocket在服务端运行效率也要比Sun JDK好很多。从SUN的JDK5.0开始,提供了泛型等非常实用的功能,其版本也不断更新,运行效率得到了非常大的提高。绅薮疮颧訝标販繯轅赛。(2)Android SDK(software development kit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。因此,Android SDK 指的既是Android专属的软件开发工具包。饪箩狞屬诺釙诬苧径凛。(3)ADT(Android Development Tools)目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。烴毙潜籬賢擔視蠶贲粵。2.1.3 Eclipse Android环境搭建(1)安装JDK基本Java环境;(2)安装Eclipse;(3)Android SDK安装;(4)ADT安装;(5)创建AVD。以上各项安装需正确指明安装路径并配置相应环境变量。102.2 Android架构分析通过上述介绍,对Android已经有了初步的了解,通过下图Android架构图可对Android的体系结构有更深了解,如图2-1所示:鋝岂涛軌跃轮莳講嫗键。图2-1 Android体系结构(1)应用层该层由运行在Dalvik虚拟机上的应用程序组成,例如日历、地图、浏览器、联系人管理等,这些应用程序主要由Java语言编写。需要说明的是,Dalvik虚拟机是Google为Android专门设计的基于寄存器的Java虚拟机,运行Java程序的速度比JVM更快。撷伪氢鱧轍幂聹諛詼庞。(2)应用框架层该层主要由View、通知管理(Notification Manager)、活动管理器(Activity Manager)等可供开发人员直接调用的API组成,这些API主要由Java语言编写。踪飯梦掺钓貞绫賁发蘄。(3)系统运行库层该层主要包括C语言标准库、多媒体库、OpenGL ES、SQLite、Webkit、Dalvik虚拟机等。也就是说,该层是对应用框架层提供支持的层。由于Java本身不能直接访问硬件,要想让Java访问硬件,必须使用NDK(Native Development Kit)才可以。NDK是一些由C/C+语言编写的库,主要是*.so文件。婭鑠机职銦夾簣軒蚀骞。(4)Linux内核层 该层主要包括驱动、内存管理、进程管理、网络协议栈等组件。112.3 Android应用的构成和工作机制2.3.1 Android应用程序中的资源 Android应用程序中的资源都在工程目录的res子目录中。当生成apk后,这些资源将被封装在apk文件中。Android应用程序包含的常用资源如下表所示:譽諶掺铒锭试监鄺儕泻。资源种类所在目录描述动画(Animation)帧(Frame)动画res/anim、res/drawable定义动画文件补间(Tween)动画res/anim颜色状态列表(Color State List)res/color定义根据视图状态变化的颜色资源可拉伸图像(Drawable)res/drawable使用支持的图像格式或XML定义图形布局(Layout)res/layout定义描述应用程序的UI布局菜单(Menu)res/menu定义应用程序菜单的内容字符串(String)res/values定义字符串,通过R.string访问相应资源颜色(Color)res/values定义字符串,通过R.color访问相应资源尺度(Dimen)res/values定义宽,高,位置,通过R.deimen访问风格(Style)res/values定义UI格式和外观,通过R.style类访问XMLres/xml基于XML的格式资源RAWres/raw保存二进制文件,从apk提取直接使用ASSETSassets保存二进制文件,建立任意层次的子目录表1 Android应用程序常用资源表2.3.2 Android的应用程序组件对于一个Android应用程序来说,是由Activity、Intent、Service、Content Provider四部分组成,但并不是每一个Android应用程序都必须由这四部分组成。在应用程序中使用时,需要在配置文件AndroidManifest.xml中进行配置。这个配置文件是每个Android应用程序所必需的,用于定义应用程序的组件、组件的功能以及必要条件等。Android应用的构成和工作流程如图2-2:俦聹执償閏号燴鈿膽賾。图2-2 Android的构成和工作流程Acitvity:Activity是Android中最重要、最基础的组件,用户在界面上看到的一个个可以切换的屏幕界面就是Android中的活动。Activity类继承了Application类,每一个Activity提供了一个可视化的区域,在这个区域内可以放置各种Android控件,例如按钮、图像、文本框等,它是Android应用程序的基本组成单元之一。缜電怅淺靓蠐浅錒鵬凜。Intent:Intent主要用于Android应用程序之间或应用程序内部不同模块之间的通信,用这个特殊的类实现在Activity之间的相互切换,可理解为Android应用程序中的通信信使。在Intent描述结构中,负责对应用中一次操作的动作,动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。其基本用法有显式和隐式,显式的Intent即在构造Intent对象时候就指定了接收者,隐式的Intent则是在构造时未指定具体接收者。 骥擯帜褸饜兗椏長绛粤。Service:Service是android系统中的一种组件,也是一种程序,它可以运行很长时间,但是它却没有用户界面,它跟Activity的级别差不多,但是他不能自己运行,只能后台运行,并且可以和其他组件进行交互。Service的启动有两种方式:Context.startService()和 Context.bindService()癱噴导閽骋艳捣靨骢鍵。Content Provider :Content Provider 属于Android应用程序的组件之一,作为应用程序之间唯一的共享数据的途径,每个Content Provider都用一个URI作为独立的标识,Content Provider 主要的功能就是存储并检索数据以及向其他应用程序提供访问数据的借口。让自己的数据和其他应用程序共享有两种方式:创建自己的Content Provier(即继承自ContentProvider的子类),或者是将自己的数据添加到已有的Content Provider中去,后者需要保证现有的Content Provider和自己的数据类型相同且具有该 Content Provider的写入权限。对于Content Provider,最重要的就是数据模型(data model) 和 URI。5鑣鸽夺圆鯢齙慫餞離龐。第三章 系统需求分析及概要设计3.1 研究目标(1)学习掌握Android应用程序的设计和开发过程,对本次设计的总体设计思路有所掌握。(2)能够使用多种Android组件进行基于Android 平台的手机消费管理软件的设计和开发。本软件是基于Eclipse的开发环境,在Android平台上运行的关于消费管理的应用软件。Android平台给我们提供了巨大的自由空间,再运用Java面向对象语言进行编程,使得系统的可行性和功能性够了更大的提高。榄阈团皱鹏緦寿驏頦蕴。3.2 需求分析 本系统是一个基于Android平台的手机消费管理软件,是为本软件的持有者提供日常消费管理方面服务的,它包括获取当前电脑端时间、修改添加消费记录的时间、添加账目明细、添加消费流动金额、选择费用属性、保存当前添加记录、查询当前记录详细信息等功能。逊输吴贝义鲽國鳩犹騸。本软件有助于人们对日常生活中的费用收入和支出情况做相应管理并提供保存记录和查询消费详细的功能,也有助于人们更好的管理自己的资金,对自身消费情况有更明细的了解,以达到协助个人理财的目的。幘觇匮骇儺红卤齡镰瀉。3.3 概要设计系统的概要设计主要对系统的总体功能如何实现,如何划分模块,系统的后台数据调用如何设计进行研究。它为系统的详细设计做铺垫。在系统的设计过程中起着非常重要的作用。誦终决懷区馱倆侧澩赜。3.3.1 系统功能模块说明Android应用程序个人理财的主要功能:(1)启动应用程序,出现登录界面,此登陆界面包含一个复选框,勾选后具有记住密码功能。(2)验证登陆,用户名和密码验证成功则完成相应跳转,否则提示用户重新登录。成功进入程序后显示欢迎界面,进入程序主界面,显示添加账目明细界面。医涤侣綃噲睞齒办銩凛。(3)在选择账目编辑框中添加本次添加的账目类型,单击进入账目类型选择界面,选择完成后重回添加账目明细界面,再填入本次添加账目的具体费用。舻当为遙头韪鳍哕晕糞。(4)系统当前显示的日期、时间默认为进入该程序时候的电脑端时间,可对该日期、时间进行重置。(5)账目属性一栏可通过单选按钮自由选择本次添加的账目属性。(6)在完成账目各项明细添加之后,可对本次添加的账目做备注说明,能在查询记录时对本次添加的账目做相应备注说明。鸪凑鸛齏嶇烛罵奖选锯。(7)点击保存,可对添加的账目做保存处理;点击取消,则对上述添加的内容做清空处理;点击查询,则对刚添加的记录做详细列表显示处理。筧驪鴨栌怀鏇颐嵘悅废。(8)点击“MENU”按钮,可以显示已添加的账目消费的账目明细信息以及软件相关信息,比如about、退出等。韋鋯鯖荣擬滄閡悬贖蘊。(9)在账目明细中,可查询添加过的所有消费记录,还可对已添加的记录做删除说明等,并对已添加的记录进行收入支出计算。涛貶騸锬晋铩锩揿宪骟。3.3.2 系统基本流程图在程序设计分析的基础上,结合实际情况,得出本程序的功能结构图。在结构图中包括了功能模块的表示。从功能需求上分析可以看出,整个应用程序应划分为以下几个模块,分别是程序启动、用户界面、SQLite数据库服务与数据传输。系统运行基本流程图如图3-1所示:钿蘇饌華檻杩鐵样说泻。启动应用程序 登录 欢迎界面 主界面 账目类型为空 账目类型不为空 账目类型 费用金额 日期和时间 账目属性 备注信息 取 消 保 存 查 询 详细显示所记录信息 清空各个 添加框内容 提示保存 信息成功 结 束 Menu 菜单 关 于 退 出 账单明细 查看已保存的账单信息 删除账单记录 戧礱風熗浇鄖适泞嚀贗。图3-1 系统运行基本流程图第四章 Adapter与数据存储4.1 AdapterAdapter是将数据绑定到UI界面上的桥接类,创建显示每个项目的子View和提供对下层数据的访问。支持Adapter绑定的用户界面必须对AdapterView抽象类进行扩展,也可创建有AdapterView派生的控件,并创建新的Adapter类来绑定它们。Android的Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。比如通过它将数据填充到ListView,GridView,Gallery。而android提供了ArrayAdapter,BaseAdapter,CursorAdapter,HeaderViewListAdapter,ListAdapter,ResourceCursorAdapter,SimpleAdapter,SimpleCursorAdapter,SpinnerAdapter,WrapperListAdapter等几种形式的Adapter。根据数据来源形式的不同可以选择不同的Adapter。9購櫛頁詩燦戶踐澜襯鳳。4.1.1 Adapter的纽带作用 在常见的View(ListView,GridView)等地方都需要用到Adapter,如下图4-1表达了Data、Adapter、View三者之间的关系:嗫奐闃頜瑷踯谫瓒兽粪。图4-1 Data、Adapter、View的关系图4.1.2 本地Adapter的解析在多数情况下,不需要用户从头创建自己的Adapter,Android提供的一系列Adapter可将数据绑定到UI Widget上。由于Android负责提供数据和选择用于显示每个项目的View,所以Adapter能快速地修改要绑定的控件的外观和功能。下面列出两个最有用也是最通用的本地Adapter。虚龉鐮宠確嵝誄祷舻鋸。(1)ArrayAdapterArrayAdapter是一个绑定View到一组对象的通用类。默认情况下,ArrayAdapter绑定每个对象的toString值在layout中预先定义的TextView控件上。另外,构造函数也允许使用更加复杂的layout或者通过重写getView方法来扩展类从而使用TextView的替代物。與顶鍔笋类謾蝾纪黾廢。(2)SimpleCursorAdapterSimpleCursorAdapter用于绑定View到Content Provider查询返回的游标Cursor上,可指定一个XML layout定义,然后将数据中的每一列的值绑定在layout中的一个View上。12結释鏈跄絞塒繭绽綹蕴。4.2 游标(Cursor)在Cursor中,查询通常返回的是一个游标(Cursor)。一个游标就代表查询结果。要一在单个数据行与行之间移动数据,可以通过moveToFirst()和MoveToNext()方法。通过isAfterLast()方法,可以检查下面是否还有数据。在ListView中可以通过SimpleCursorAdapter适配器来直接使用游标。13餑诎鉈鲻缥评缯肃鮮驃。4.3 数据存储数据存储是手机领域中最常见的应用之一,很多时候应用程序需要对后台的数据进行存储或再次访问,通过数据存储便能够在移动设备中显示不同的信息。数据存储必须以某种方式保存,不能丢失,并且能够有效、简便地使用和更新这些数据。Android中主要提供了4种数据存储方式:SharedPreferences存储、SQLite数据库存储、Files文件存储和Network网络存储。下面主要介绍说明SharedPreferences存储和SQLite数据库存储。14爷缆鉅摯騰厕綁荩笺潑。4.3.1 SharedPreferences存储SharedPreferences是Android操作系统所提供的一种简单机制,用来存储和检索一些关键变量的内容,例如:欢迎语、登陆用户名和密码等。其以“键-值”的方式存储,可以很方便的实现读取和存入。锞炽邐繒萨蝦窦补飙赝。首先采用getSharedPreferences(String,int)方法获取一个SharedPreferences对象settings,SETTING_PREF是存储数据的文件名,然后定义SharedPreferences.Editor类变量editor为seting.edit(),负责编辑和确认存储结果,editor.putSring()方法将编辑在mEditText字段的数据内容存储在SHARED_MSG变量,再用mit

温馨提示

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

评论

0/150

提交评论