




已阅读5页,还剩55页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科实验报告课程名称:基于Android的记事本的设计与实现 全套设计加扣3012250582 实验项目: Android记事本 实验地点: 昆山杰普软件科技公司 专业班级: 软件1105班 学号: 学生姓名: 指导教师: 2015年 4月 28日 基于安卓系统的备忘录作 者 指导教师 摘 要 在21世纪的今天,智能手机得到了飞速的发展,作为智能手机中使用人数最多的andriod智能手机的发展尤为迅速,andriod手机已经成了人们通讯和娱乐的主要的工具,生活中经常忘记许多事情错过许多重要的事情,一款随时随地可以记录的工具变得非常重要。因此,设计一个基于android手机的简单备忘录软件,这是非常迎合大众消费的,推动市场的发展。本论文通过对当前大众比较喜欢的记事本日记本等软件进行了相关的调查,并作出了相关的需求分析,从系统目标、系统开发环境、设计步骤、功能实现等几个方面进行系统的整体设计,设计了基于Android的备忘录软件,实现了文本信息添加、语音信息添加以及信息查询等主要功能模块。通过对系统的功能进行测试,测试结果证明该系统界面友好、功能完善,有着较高的使用价值,具有庞大的潜在用户群体和较广阔的应用前景。关键词:Android平台;备忘录;MVC;JavaBased on the android memosAbstract: Pick to: in the 21st century today, smartphones got rapid development, as a smartphone by the largest number of people in the development of the android smartphone is especially rapid, android mobile phone has become a major people communication and entertainment tool, often forget a lot of things in life to miss many important things, the tool that can record at any time and place has become very important. Therefore, design a simple memo based on the android mobile phone software, it is very to cater to the mass consumption, promote the development of the market. This paper based on the current public prefer notebook diary software, such as the relevant investigation, and made relevant requirements analysis, from the system target, system development environment, system design steps, functions, and other aspects of the overall design, design a memo based on the Android software, realized the text information, voice information information query system, such as the main functional modules. Through the test, the function of the system test results show that the system friendly interface, perfect function, have higher use value, has the huge potential user groups and the broad application prospect. Key words: the Android platform; The memo. MVC; Java59目 录第一章 引言61.1 课题的背景和意义61.2 国内外研究现状61.3 本文研究的主要内容7第二章 系统需求分析82.1 需求概括82.1.1 目标82.1.2 系统运行环境82.1.2 可行性分析8操作可行性8技术可行性8经济可行性82.2 Android开发环境变量配置92.2.1 jdk的配置92.2.2 sdk的配置10第三章 Android架构分析和应用程序结构剖析143.1 Android的功能特征143.2 Android架构分析153.2.1 应用程序框架183.2.2 类库183.2.3 Android运行时的组件193.3 Android应用的构成和工作机制193.4 应用程序基础203.5 应用程序组件203.5.1 活动(Activities)213.5.2 服务(Services)233.5.3 广播接收者(Broadcast receivers)243.5.4 内容提供者(Content providers)25第四章 系统设计与实现264.1 系统功能模块设计264.2 技术框架设计274.3 UI界面设计274.4 核心代码设计实现31第5章 系统测试与性能345.1软件测试345.1.1测试简介345.1.2测试分类345.1.3测试步骤355.2游戏系统测试355.3游戏性能分析365.4本章小结36总结38参考文献39毕业论文第一章 引言1.1 课题的背景和意义当今社会,工作和生活的双重压力全面侵袭着社会人,工作生活的诸多安排在脑中纠缠复杂,如何有条不紊的处理和安排,各种各样的备忘录就显得相当重要,其中最为方便的迅捷的要属手机备忘录。而一个备忘录却能够给工作学习的我们合理地去安排事务,就用我们随身携带的手机,便可以实现一个基于Android平台的备忘录。随着软件市场对手机备忘录的重视,各式各样的手机备忘录充斥软件市场,如何设计出简便迅捷的备忘录就是重中之重。首先,记事本的基本功能就是记事,手机用户首先用到的就是文本记事,输入事务信息以文本的形式展现出来,存储起来。随着用户需求的增加,可能希望用图形来代替文本来记事,用户之间打开记事本,看到图片就能联系自己所记载的事务信息。这样免去了输入文字的麻烦,反而会更简单。又或者是文本与图片的交叉运用,可以让用户自己选择自己喜欢的记事方式,更加自由与便捷。所以此功能的意义是让简单的记事信息能以文本和图形表达,更加丰富多彩。其次,在支持传统的文字记事方式下,还要支持语音记事。因为用户需要追求更加简单的记事方式,不需要手动输入文字,而是直接语音记事。语音直接保存,有利于下次用户直接查看时点击按钮就可以播放相应的录音信息了。这对于某些眼睛不太好的,或者说更喜欢听的用户是很有吸引力的。再次,如果记事本的信息很多,而用户又需要快速找到自己需要的记事信息,这时候内容检索就非常有用了。对于业务繁忙,或者是经常写备忘录记事的群体,这个内容检索功能能带给用户很多的便利。让他们更加高效的利用手机,节约时间,高效工作与生活。最后,针对商务人士,或者是经常使用邮箱(如Gmail)的用户来说,有时候希望通过查看邮箱的同时查看记事本的信息,一次性获取全部。所以记事本同步邮箱功能能够为用户带来更多的功能与便利。1.2 国内外研究现状目前国内外有4款比较火的记事本软件。分别是Evernote,小米便签,NoteEverything,麦库记事。 Evernote在软件界面方面界面清爽,需注册登录后才可使用,图标布局比较协调;记事笔记方面可编写内容,添加标签,支持上传图片、音频、视频、文件等附件;特色功能方面具有搜索笔记和发送笔记、定位服务、同步等功能;资源占用方面内存占最多,CPU占用适中。 小米便签在软件界面方面界面功能简单,可查看和新建便签,菜单功能相对丰富;记事方面只支持文字内容,可以选择桌面Widget颜色、字体大小等;特色功能方面可以移进文件夹和分享、备份、还原和设置保护密码;资源占用方面内存占用较中,CPU占用最少。 Note Everything界面简洁,上方有新建记事和搜索等按钮,菜单功能非常丰富;支持文本、绘图、语音、图片、清单、图库、视频、条形码等形式,可固定显示记事;特色是单个记事加密,数据备份、还原、导入、到处,创建快捷方式;内存占用最少,CPU占用较中。 麦库记事界面比较精美,菜单功能相对简单;可选分类、加标签、附件,支持拍照和实时录音。特色是笔记搜索和分类,网络同步和笔记分享;内存占用适中,CPU占用最多。1.3 本文研究的主要内容本文设计的是一种适合应用在 Android 手机的多功能人性化的备忘录软件,实现了智能手机应用的又一次跨越和飞跃。其主要研究基于Android的备忘录的设计、开发及实现。本系统的设计思路是开发独立运行的应用程序,主要功能包括文本信息添加、语音信息添加以及信息查询等主要功能模块。第二章 系统需求分析2.1 需求概括2.1.1 目标设计一个画面简单而又美丽,功能众多而操作简单的基于Android的备忘录软件。2.1.2 系统运行环境(1)硬件资源能够安装和运行Android系统的具备功能的智能手机。(2) 软件资源操作系统: Windows XP或Windows 7。Android sdkJDK:jdk1.6。Eclipse2.1.2 可行性分析操作可行性软件可以自由的操作是评价一个软件成功与否的关键,在很多著名软件由于操作简洁方便,成为了它成功的重要因素,拥有了广大的用户。一款记事本软件应该在用户需要的时候可以速记,方便的操作不会误事。所以把大部分的主要功能按钮放在了NavigationBar上操作步骤简单。技术可行性本次使用Android开发平台进行开发由于Android自带的组件类库可以很方便的进行实现,在这一过程中会使用Andoid的组件以及Java语言进行逻辑处理,详细环境会在本章及第三章进行讲解。 经济可行性开发该系统所需的相关资料可以通过已存在的相关系统进行调查采集,所需的其他应用软件、硬件系统也易于获得。因此,开发成本较低。而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。所以,从经济的角度来看,该系统可行。2.2 Android开发环境变量配置2.2.1 jdk的配置首先,需要到sun的官方网站上将jdk下载下来,然而用户需要注意不要下载成jre了,因为JRE不能够为 Java的开发提供环境,它只是一个java的运行环境。sun官方网站的地址为: 。下载安装包后,将压缩包解压到一个目录,例如C: Program Files Java jdk1.5.0_14 然后依次点击我的电脑右键 - 属性 - 高级,点击下面的“系统变量”处选择新的输入变量JAVA_HOME变量值,例如名以下环境变量,在我的C: Program Files文件的Java JDK1。 5.0_14。在图2-1所示的结果:图2-1进入环境变量确定好后然后创建一个类路径变量名为classpath的变量,变量的值为 %JAVA_HOME%/lib/rt.jar;%JAVA_HOME%/lib/tools.jar,决心要找到PATH变量,双击或单击编辑,在变量添加JAVA_HOME/ bin中的前面;注意它,确定,确定,确定后操作就完成了。具体来说,如图2-2所示:图2-2设置环境变量然后一直点击开始-运行命令,输入Java或javac等命令看有没有产生什么效果,如果它出来的结果是很多其他的东西,那就说明配置正确了,如果不是内部或外部命令类似命令等,这说明你的设置出现了一定的问题,然后你需要研究一下你的配置哪里出了错误并加以修改。2.2.2 sdk的配置由于我们开发的引用程序是基于andriod平台开发的,因此应该从谷歌官方网站下载SDK,地址为/sdk/1.5_r3/index.html。sdk的下载地址可能会随着andriod系统平台的更新而发生改变,所以我们可以选择输入andriod的主页面地址/ / index.html的进入android的主页进行sdk的下载,如果电脑装的XP系统,则应该下载sdk的第一个windows的版本。在下载好压缩包后首先将其解压到如D:SDKandroid-sdk-windows-1.5_r3android-sdk-windows-1.5_r3这样的一个目录中,然后还必须通JDK设置环境一样设置sdk的环境,新SDK_HOME变量的设置,是D:SDKandroid-sdk-windows-1.5_r3android-sdk-windows-1.5_r3,然后找到一种方法,比如在它的前面加上SDK_HOMEtools;就能很好的解决这个问题了。我们也可以同jdk的配置一样测试环境变量设置是否成功,可以在cmd窗口中android命令,如果它出来的结果是很多其他的东西,那就说明配置正确了。. 然后进入eclipse配置Android模块,选择help-Install New SoftWare。. Ejkehntjgknfkjnbkfnbkfnbklfnbmklfmbkfbm. Yrtuytyhrtyyyrywuiyrtyyutuiuytyuiuywuuy. Yyuuyeuii6467uytytyujygrtyujhyjtubtvgtbyhjnb. Btrtnujbgttnjubgvtjuubtgnjuunbhnjjnyhnyujnhbtyu. Jnnmjnbhnyjnbhtnymnbnjjuyhyjkiuyhjki7uyhj6uyhj67juhy6j. Uyh6jjuyhj6uyhj6kuyhj6kjuhy6j7juhyjkijuhyj6ijuhyuj6ijuhj6ij. Uj6hy6jhyj6iuyhj6hyj6kiuh5j6kihyj8k8uhk7lokijui8;plo;/;,l. Hjfdgthujfdghjgfdgjfrghjkhgrfhjkghjghjhghghdfghjgfhfh. Gfhgfhjgfdghjgfdghjgfdghjhgfhjhgfghgfdsghfdsghgfdsghgfdfh. Gfghgfghgsfghjhgfdghjjhtyytryutryutryuytryuytuiytryutyuuy. Tyuytuytuiuytjmnbbmgfhjgtjhgfhjktyuytuiuytukyhgtjhfghhgfdfg. dfghtrfedghkjgfdghkjgfzghcddzxcvxzsxdcbgvcdxscfbhbfcdfvgbhgf. gfhfdsghejhweru点击add按钮,输入/android/eclipse/并确定。.接着eclipse会自动识别android插件。点两次next继续。.选择I accept the terms of the license agreements(接受协议)接着系统就会自动安装android插件。最后系统会提示你重启eclipse,确定。.再次进入eclipse后,选择window-preferences。接着选择android所在目录并确定。再选择window-Android sdk and avd manage,出现如下界面。.选择update all,出现如下界面。.接着选择SDK 2.1(这里用了2.1版),并选择右面的accept。然后再选择samples for api 7,并选择右面的accept。最后选.install.接着我们还要配置AVD(否则就无法虚拟手机):选择window-Android sdk and avd manager,再选Vitural Devices。选择New,进行新AVD配置:名字可以随便取,target里选你的android SDK版本,SD卡大小自定,接着选Create AVD。.这之后,eclipse的android环境就配置好了。下面将会讲解android的一些知识内容。.第三章 Android架构分析和应用程序结构剖析3.1 Android的功能特征(1)应用程序体系结构:体系结构的应用程序有几个不同的基本组件开发应用程序时,您可以联系这些组件中使用,可以节省应用程序开发的时间和精力。(2)Dalvik虚拟机:在使用Java虚拟机时,而不应该选择一个标准的Java虚拟机,应该选用谷歌自主研发的Dalvik虚拟机,这确保兼容性在API方面能够很好,而且Dalvik虚拟机针对移动安卓手机实现了很大程度上的优化,只需要占用很少一部分的资源,拥有更高的工作效率。(3)集成的浏览器:集成的浏览器是内置的基于WebKit引擎的浏览器Android浏览器进化成的。 WedKit是一个开放源码的Web浏览器排版引擎,目前采用WebKit浏览器引擎,主要包括Safari浏览器,Epiphany浏览器,Midori浏览器等。 Android手机具有的功能,你可以浏览网页,以达到更好的效果,如:信息,请联系就像在您的网站缩放效果的本地操作。(4)优化的图形的能力:该程序可用于在2D和3D图形功能两个区域。在2D方面, Android提供了一个独特的(SGL 类库,而3D方面是使用的OpenGLES1.0 ( OpenGL进行嵌入式系统)的标准库是非常快的图形引擎,能够使硬件的运行熟读得到很大程度上的提高。(5)数据库SQLite: SQLite的可访问结构化数据。SQLite是一款轻型的数据库,旨在设置,它现在在很多嵌入式产品中使用,它采用非常低的资源。它支持Windows / Linux的/ U nix的其他主要操作系统,可与各种编程语言,如PHP ,Java和ODBC接口,相比MySQL和PostgreSQL在其处理速度方面更快的整合。它不需要安装和配置管理,它是在一个单一的磁盘文件存储一个完整的数据库,但数据库的小尺寸仅支持250KB到2TB。虽然它很小,但是支持的SQL语句到其他的开源数据库。它还支持并发交易和处理等等。 SQLite是也是一个开放的关系型数据库,它在轻量化设计结构方面的特点,更适合在手机上使用。(6)支持多媒体的功能:主要用于播放媒体文件。这也包括音频(如MP3播放器或其他音乐文件等)和视频(如播放从网上下载的视频)的支持,并为“主地址的URI ”的支持(注:地址URI统一资源标识符)模式 - 网络上的流媒体直播。还支持多种格式相同的静态图像,如JPG,PNG , GIF等多种格式。(7)GSM :即全球移动通信系统,也被称为“全球通”,GSM全球移动通信系统是一个标准的移动通信技术,起源于欧洲,是第二代移动通信技术,他开发的目的主要就是为了实现全球使用同一个移动电话网络的标准来进行通讯,让用户能够在世界各地使用的同一个电话号。 GSM移动电话技术是智能通讯设备硬件显示的一部分,但它同时也是在基于安卓的应用程序了开发过程中的一个十分重要的特点。(8)支持, EDGE , 3G和Wi-Fi :是一种新的,开放的,低成本,短距离的无线连接技术可以取代语音和数据电缆的短距离无线传输。 EDGE (增强型数据速率GSM演进技术) ,增强型数据速率GSM演进技术。 EDGE是GSM向3G技术的过渡,它主要是在GSM系统中采用了新的调制方法,多时隙操作最先进和调制技术ESOS 。因为8PSK的信号空间可以在GSM中的GMSK调制中使用的现有扩展为28 ,从而使包含在每个码元中的信息是原来的4倍。Wi-Fi ( WirelessFidelity ) ,即无线保真技术,与技术,属于办公室和家庭中使用的短距离无线技术。该技术使用的2.4GHz频段附近的频段仍然是没用许可的无线频段。目前的标准可以用于带有两个IEEE802.lla和IEEE802.11b的。通信能力也包括在内,以显示这款手机的硬件,但也可以在Android应用程序开发的重要特征之一。(9)GPS :即全球定位系统,这是由拥有24颗卫星的卫星系统的覆盖全球而形成的一个定位系统。该系统确保了在任何时候和任何地方可以在相同的时间观测到4颗卫星的存在,该卫星可以采取确保的纬度,经度,以及观察点的高度,实现导航,定位,时间和功能其他功能。这种技术可以用来引导飞机,船舶,车辆和个人。这也反映在手机的硬件,而且在Android应用程序的开发是其中的重要特征之一。3.2 Android架构分析图中显示的是Android架构的五个主要部分。Android系统架构之应用程序框架开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。隐藏在每个应用后面的是一系列的服务和系统, 其中包括;* 丰富而又可扩展的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons), 甚至可嵌入的web浏览器。* 内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据* 资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件( layout files )。* 通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。* 活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。有关更多的细节和怎样从头写一个应用程序,请参考 如何编写一个 Android 应用程序.Android系统架构之系统运行库1)程序库Android 包含一些C/C+库,这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:系统 C 库 - 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基于 embedded linux 的设备定制的。媒体库 - 基于 PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。Surface Manager - 对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。LibWebCore - 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。 SGL - 底层的2D图形引擎3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件 3D加速(如果可用)或者使用高度优化的3D软加速。* FreeType -位图(bitmap)和矢量(vector)字体显示。* SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。2)Android 运行库Android 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。 Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK中 的 “dx” 工具转化成.dex格式由虚拟机执行。Dalvik虚拟机依赖于linux内核的一些功能,比如线程机制和底层内存管理机制。Android系统架构之Linux 内核Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理, 网络协议栈和驱动模型。 Linux 内核也同时作为硬件和软件栈之间的抽象层。推荐好好规划和合格合格合格和后果和共和国工会法规和方法和方法反反复复反复哥哥哥哥好地方和导入一部分行业个回复的话个哈和东方红的电话的电话东方红电话电话地方好的话的电话地方合伙人个个人苟富贵舍不得干部担任的改变的话发给三个人告诉糖果色感受感受告诉如果是公司认购三个人告诉让哥哥他让他同人图如图人与人也让他夜夜工人房好哈的阿萨大姐夫嘎你的价格和国家的机关将覆盖is见到过i结果考试辅导过vjifuhjgivjfi结果客服及贵金属 分工好女女吧即可方便解决您方便快捷付贷款比较疯狂不肯交罚款不仅包括北京的看不见吗 科技改变不可即分别叫你呢会经费和GV江苏凤凰谷 个省份的赶紧上飞机距高考人家公交卡vi然后把vfghbhnf挂号费的几个女服合格的合法化的恢复好的呢回复你农村建房的回复iahnvudhegfnhfhfndutyuiyh房交会的骨灰读后感能上发布的还不发货的北方话费单色光头gggggggggggggggg个jadgkjdkgjiojgnvisodgjsiklgijirkgvjmiorgjvisodgjiskgjroitjiogrujgvlgiorgmbvoriugodmvbjgoriugjvbgiorujgmrsiotugjvsioru9jgvsiorg9ujvsgiroujgvogrivnghiorugvjnrgiousdojxgiorujgvnrio78ugjhfgneghnsstbrtbusytdytbjytnjdcbtybjytnjetbjerytibjteybjynjtdynyityityuintynitynityniktyunyunyun3.2.1 应用程序框架在Android的SDK ,允许开发者使用API的授权框架是相同的核心应用程序,以方便组件和设计的重用定义应用程序,发布应用程序可以使用其他应用程序。然而,这是受安全机制应用架构,用户可以使用相同的机制来添加,组件更换。所有当前应用程序是由服务和系统制造,包括:(1)系统是强大的,可扩展的视图:用于在系统屏幕的发展,常用的控件,网格,文本框,按钮等,同时还内嵌Web浏览器的列表来构建应用程序包的基本组成部分。(2)内容提供商:使应用程序的数据(如图书馆,电话号码)进入到另一个应用程序或共享自己的数据。(3)资源管理器:提供了多种来源的非编码应用程序来使用。例如:字符串相关的图形文件或文件排版布局。(4)通知管理器:提供自定义应用程序的应用程序会显示在状态栏中的消息。(5)事件管理器:管理应用程序的生命周期,并提供了一个通用的导航回退功能。例如:启动应用程序使用的资源,当您关闭该应用程序准备和释放资源,如内存和工作。(6)窗口管理:管理Windows启动程序。(7)位置管理:管理的映射相关的服务功能。(8)经理电话:管理用户拨打和接听电话相关的功能。(9)包管理器:管理所有安装在Android系统上的包。3.2.2 类库包含了一些库的C / C + +类中的Android , Android系统库可以在不同的组件使用。开发人员可以通过应用程序框架使用这些功能。一些核心库如下:(1)面管理器:主要功能是允许开发人员访问/显示系统和管理功能的互动性和多实现应用之间的无缝集成2D/3D之间的显示和操作访问对应。例如:合成,叠加作用2D , 2D显示。(2) 3Dlibraries :主要规格是由openGLES1.0 3D图形引擎定义。这个库使用硬件加速(当硬件可用) ,可以使处理和显示的最佳的3D硬件功能。(3)西格里:主要是处理与显示2D图形引擎的各个方面。(4)媒体框架的工作:主要是基于多媒体库开发为主的公司PacketVideo公司的OpenCore库支持播放的大量流行的音频和视频格式,静态图片和录制。例如: MPEG4,H.264 , MP3,AAC , AMR , JPG,PNG , GIF等格式(5)免费类型:主要用于显示位图和矢量图形保持器。(6) SSL : ( secureSocketsuyer ) ,中国被称为“安全套接层协议层”,它是基于提出由Netscape Web应用的安全协议,目前的版本是3.0 。 SSL协议来确定的机制来提供应用程序协议(如HTTP , TELENET , NMTP和FTP )和TCP / IP协议,它为TCP / IP,服务器认证,消息完整性以及可选的客户机认证数据加密之间的分层数据的安全性。它已被广泛地用于认证和网络浏览器与服务器之间的数据传输进行加密。 SSL协议位于与各种TCP应用层协议膀胱协议提供数据通信的安全性支持之间。 SSL协议可分为两层: SSL记录协议( SSL山坳原始记录) :它建立在可靠的传输协议(如TCP )之上,提供数据封装的高层协议,压缩,加密和支持其他的基本功能。 SSL握手协议( SSL震荡原列) :这是双方的确认沟通,协商加密算法和加密密钥交换等方面的实际开始之前,建立在数据传输的SSL记录协议。 SSL协议提供的服务主要包括:认证用户和服务器,确保你把正确的数据在客户端和服务器; 中间加密数据,防止数据被窃取; 传输过程中保持数据的完整性,以确保数据没有被改变。(7)SQLite : SQLite是可以用于所有应用程序轻量级关系型数据库引擎,是一个开放的关系型数据库。(8)网络工具包是用于构建Android的网络浏览器和嵌入式意见先进的浏览器引擎,也可以让开发人员能够利用这些机器的优势,执行不同的应用。(9)开发库C :是标准的BSD但是C库,用于嵌入式Linux设备进行了优化调整。3.2.3 Android运行时的组件尽管Android是由Java语言开发,编写应用程序,但不使用Java运行时组件来执行Java程序,而是使用由谷歌自己开发的实施程序在Android运行时组件。 Android的运行时组件包括两个重要部分,一个核心类库,另一种是Dalvik虚拟机。3.3 Android应用的构成和工作机制Android的应用程序包含了,作出积极的,IntentReceiver,服务,内容提供商等个部分,但不是每一个Android应用程序必须包括四个部分。当使用一个应用程序,您必须配置的xml配置文件。这个配置文件是必需的在Android上每个应用程序,以及必要的应用程序组件,组件功能的条件的自定义。3.4 应用程序基础Android应用程序是用Java编程语言。编译Java代码,包括应用的需求和所有数据文件结合AAPT工具到Android包的源,存档文件的后缀是APK 。分发和安装文件的移动设备应用的中介或工具,用户下载文件到自己的设备。之一。所有的代码文件的APK会考虑有关申请。AAPT是一个缩写, 是Android的资产包装工具的每一个头字母,包括这个包SDK工具/目录中。查看,创建,更新和兼容ZIP文件( ZIP ,罐, APK ),它可以被编译成二进制文件包的来源。虽然你可能不能直接用来确定,但一个脚本(脚本)和IDE插件来使用这个工具打包成APK文件是一个Android应用程序。下面是使用更详细的细节,首先打开终端,输入以下工具/目录下,运行以下命令:Linux或Mac OS : AAPT ,如果是视窗: aapt.exe 。这里注意:在Android平台的工具/目录/目录是SDK / android的-X /工具/以各种不同的方式,每个Android应用程序是生活在自己的世界里。默认情况下,在自己的Linux进程中运行的任何应用程序。当应用程序需要在任何时间来执行,并且将启动过程中,当它不再需要,因此无需为其他应用程序的系统资源,将覆盖的过程。每个应用程序都有它自己的Java虚拟机(VM )的应用程序是独立于所有其他应用程序代码运行。默认情况下,每个应用程序分配一个唯一的Linux用户ID 。为每个用户的应用程序和应用程序文件的权限设置的只有自己看。虽然有多种方法可以将它们应用到另一个。也可以设置两个应用程序共享的用户ID ,在这种情况下,他们可以看到他们的文件。为了节省系统资源,具有相同ID的应用程序可以在同一个Linux的过程中安装最好的,共享相同的虚拟机。3.5 应用程序组件Android的一个关键特征是,一个应用程序可以使用其他应用程序的元素(假设这些应用程序允许)例如,如果你的应用需要显示的滚动列表中的图像,和其他应用程序已经开发了一个适当的滚动条,可供其他应用程序使用,你可以调用这个滚动条去上班,而不是自己开发的一个。你的应用程序代码不纳入到其他应用程序,或与它。相反,当它刚开始产生的其他应用程序块的需求。为此,当应用程序的任何部分的要求,系统必须能启动应用程序的过程,并实例化的Java对象的部分。因此,不同于大多数其他应用程序,Android应用程序没有一个单一的入口点(例如,没有主(功能)相反,本系统可以实例化运行几个必要的组件。有四种类型的组件:活动(Activities) 服务(Services) 广播接收者(Broadcast receivers) 内容提供者(Content providers) 然而,不是所有的应用程序必须包含四部分,你的应用程序可能包括上述一个或几个建设。当你决定建立Android使用这些组件的应用程序,你应该列出他们在AndroidManifest.xml文件,在这个文件中你可以声明应用的组件和它们的特性和要求。在Android的发展路程的AndroidManifest.xml:HelloWorld 1.6项目目录结构,AndroidManifest.xml短暂的时刻,你可以参考一下,接下来将介绍它。3.5.1 活动(Activities) 是一个可视化的用户界面活性,在感兴趣的事件用户。例如,一个活动可能表明用户选择的菜单项列表,也可以显示照片和标题。一个短消息应用程序可能有一个活动,显示发送联系人信息列表;第二活动,写一个信息,选定的联系;其他活动,重温旧信息或更改设置。虽然他们的工作形成一个整体的用户界面,但每个事件是独立于其他的活动。这是每个实现Activity基类的子类。android.app.activity类:因为几乎所有的活动(活动)是与用户的交互,所以活动课注重创建一个窗口,您可以使用setContentView方法(视图)将放在你自己的用户界面。然而,活动通常是在全屏模式显示给用户,也可以嵌入在一个浮动窗口,或其他活动。有两种方法几乎都是活动的子类的实现:onCreate(束)你的活动(活动)的初始化等一些图形绘制完成。最重要的是,在这种方法中,你通常会定义你的UI,并使用findViewById(int)检索您需要以编程方式在你的UI组件,调用setContentView(int)的布局资源的方法(布局资源)(widgets)setContentView指定文件的指定XML布局(主。)这个界面可以显示,然后进行相关的操作,我们的业务将被包装成一个意图(intent)也有相应的处理相关活动的意图。onPause(加工活动,当你离开的时候做的事情。最重要的是,用户应该使所有的变化在这里提交(通常是内容提供者保存数据)生命周期如图3-3。图3-3Android的生命周期每一个应用程序可能只包含一个活动,或者是像短信应用程序一样,它可能会包含几个活动。这些活动分别是什么,以及有多少,这个当然取决于它的应用程序自己的设计。根据一般情况来说,当一个应用程序被启动的时候,会被标记为第一个的活动,应该展示给用户。从一个活动转移到另外一个活动由当前的活动完成从而开始下一个。每一个活动都会有一个默认的窗口。根据一般情况来说,窗口是会填满整个屏幕的,但是它也有可能比屏幕小或者是浮在其他窗口上,这个就是程序员代码的编写情况了。一个活动还可以使用额外窗口。比如弹出式对话框,或者是当一个用户选择屏幕上一个特定的项时,会跳出一个窗口来显示给用户重要的信息。窗口的可视化内容是由继承自接口为View基类,一个分层的视图对象提供。每个可视化控件是窗口内的一个特定的矩形空间。父视图包含和组织子女视图的布局。叶子视图-分层的底层。绘制的矩形会直接控制和响应用户的操作。所以,一个视图活动是与用户发生交互的地方。比如说,一个视图显示一个小的图片和当用户点击图片时发起一个动作行为。Android有一些现成的可视化控件你可以使用,其中包括按钮(buttons)、图片按钮(ImageButton)、文本域(text fields)、可编辑文本控件(EditText)、菜单项(menu items)、仿真时钟(AnalogClock)滚动条(scroll bars)、开关按钮(ToggleButton)、复选按钮(check boxes)等等。通过Activity.setContentView 方法来设置一个视图层次在我们的活动窗口中。内容视图(content view)是层次结构的根视图对象。层次结构如下图3-4所示:图3-4View的层次结构Activity.setContentView方法:public void setContentView (int layoutResID):根据布局资源的设置活动界面。资源将会被夸大,添加布局资源文件中的所有的最高层的视图( top-level views )到活动.3.5.2 服务(Services)在与活性对比,服务没有可视化的用户界面,但服务的特点是长时间在后台运行。因此,太,可以理解,服务是具有较长的生命周期,没有用户界面的程序。例如,一个服务可以播放背景音乐,但用户可以做一些其他的事情要做,也可以从网络中获取数据,或者计算结果将提供给那些需要的活动(活动)从基类继承的每个服务的服务。每个服务都有自己的阶级Keiko 相应的声明在AndroidManifest.xml 。服务必须由context.startservice (或context.bindservice (因为有两种不同的服务生命周期的开始。一个很典型的例子是媒体播放器列表中的文件的播放播放歌曲。播放器应用程序可能有一个或更多的活动(活动)允许用户选择听歌曲并开始播放。然而,音乐播放器本身不会在一个活动中处理,因为用户将音乐起,当用户离开的球员和做其他的事情。为了能够继续保持音乐播放,媒体播放器活动可以启动一个服务在后台运行。系统会让音乐服务运行,甚至当媒体播放器离开屏幕。你可以连接(绑定)正在运行的服务(如果它不是已经启动服务)连接后,您可以将服务接口和服务交流。对于音乐服务,这个接口允许用户暂停,倒带,停止和重新启动播放。喜欢的活动(活动),和其他组件,服务(服务)在主线程中运行的应用程序。因此,他们不会阻止其他组件或用户界面,他们往往会产生一些耗时的任务(如音乐播放)3.5.3 广播接收者(Broadcast receivers) 无线电接收机是一个组件,它什么都不做,只是接受广播公告并作出相应的反应。许多广播来自系统的代码,如改变时间的公告区,电池低,照片被采取,用户改变语言偏好。应用程序也可以启动广播,例如,他知道一些数据的其他程序已经下载到设备,他们可以使用数据。应用程序可以有任意数量的广播接收机的任何通知是非常重要的反应。中的所有收件人从基类继承的。BroadcastReceiver 类:接受sendBroadcast (意图发送(意图)的基类可以用context.registerreceiver (动态注册这个类的实例,或者静态发布标签在AndroidManifest.xml 注意:如果你在活动。onResume (注册者,你应该activity.onpause (取消,因为当你不接受意图暂停,取消将削减不必要的开销不取消它activity.onsaveinstancestate (因为它不会如果用户移动到前一个堆栈调用。有两种主要类型的广播可以接受:正常播放(通过上下文。sendBroadcast送)是完全异步的。所有的广播接收器运行一个混乱的方式,通常在同一时间收到。如此高的效率,但意味着接收方不能使用结果或终止广播数据传播。有序的广播(由上下文。sendorderedbroadcast送)曾经传递给收件人。由于每个人来执行,所以它可以传播到下一个接收器可以完全停止传播,这样他就不会被传递到其他的接收机。接收机运行序列匹配的intent过滤器(意图过滤器)Android :优先级属性控制。广播接收器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025大气合同封面图片环保主题设计及印刷一体化服务合同
- 2025版建筑行业劳务派遣工聘用合同规范
- 2025年投标文件保密承诺书编制指南
- 2025年新型纸箱定制采购合同
- 2025版环保节能土建基础施工与运维合同
- 2025版全新国际贸易居间服务佣金支付协议范本
- 2025年市场分析:功能性食品消费需求预测与产品创新前景
- 2025年度车辆租赁与车辆改装定制服务协议
- 2025版退货退款及售后保障服务合同模板
- 电商平台大数据分析与2025年精准营销市场前景研究报告
- 网络安全和信息化领导小组职责
- 中职班主任管理培训
- 高三冲刺毕业家长会课件2024-2025学年
- 运维或技术支持岗位招聘笔试题与参考答案(某大型央企)2024年
- 天津市南开区2023-2024学年六年级下学期期末数学试题
- 高中数学选择性必修1 教材习题答案
- 《水处理生物学》课件
- 人教版五年级下册数学选择题大全带答案解析
- 酒店开业客房筹备倒计时模板
- 2024中国保险发展报告-中南大风险管理研究中心.燕道数科
- GB/T 43681-2024生态系统评估区域生态系统调查方法
评论
0/150
提交评论