android开发关键技术_第1页
android开发关键技术_第2页
android开发关键技术_第3页
android开发关键技术_第4页
android开发关键技术_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

Android开发技术研究学号:学生所在学院:信息工程学院学生姓名:陈烨任课教师:杨词慧教师所在学院:信息工程学院2012年6月

Android开发技术研究陈烨南昌航空大学摘要Android平台是Google推出的新一代智能手机平台。本论文深入讨论Android平台的系统架构,并详细介绍了在Windows系统下Android开发环境的搭建。关键词:GoogleAndroid;系统架构;环境搭建引言Android一词的本义是指机器人,同时也是Google于2007年11月5日牵手34家移动技术和无线应用领域的领军企业联合组成的开发联盟(OpenHandsetAlliance)宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。其开放性保证该平台不存在任何阻碍移动产业创新的阻碍,开发人员在该平台开发的所有应用程序,必须是使用java语言编写的,在AndroidRuntime的Dalivk虚拟机上运行的。Android系统架构Android基本上就是一种嵌入式Linux系统再加上一些重要的手机应用开发软件,如果深入研究其系统架构,其整体自底向上由4个主要层次构成,包括LinuxKernel(Linux内核层)、Library(函数库)和AndroidRuntime(Android运行时库)、ApplicationFramework(应用软件架构)、Application(应用程序),如图1所示。图1、Android系统架构(1)LinuxKernel(Linux内核层):Android基于Linux提供核心系统服务,负责硬件的驱动程序、网络堆栈、电源、系统安全机制、进程管理以及内存管理等功能。LinuxKernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务,分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。特别的是,这个内核操作系统并非GUN/Linux的,所以其系统库、系统初始化和编程接口都喝标准的Linux系统有所不同。它没有采用虚拟内存文件系统,而是采用YAFFS2文件系统。(2)Library(函数库)和AndroidRuntime(Andriod运行时库):Library(函数库)由大多数开放源代码的函数库组成,包含一个C/C++库的集合,供Android系统的各个组件使用。这些功能通过Android的应用程序框架(ApplicationFramework)展示给开发者,例如准C函数库Libc、OpenSSL、SQLite等;网页函数库WebKit负责Android网页浏览器的运行;媒体库基于PacketVideo的OpenCORE,这些库支持播放和录制许多流行的音频和视频格式,以及静态图像文件,包括MPEG4、、MP3、AAC、AMR、JPG、PNG;界面管理,管理访问显示子系统和无缝组合多个应用程序的二维和三维图像层;LibWebCore,新式的Web浏览器引擎,驱动Android浏览器和内嵌的Web视图;SGL,基本的2D图形引擎;3D库,基于OpenGLES1.0APIs的实现。所有应用程序都可以使用的强大而轻量级的关系数据库引擎。AndroidRuntime(Android运行时库)是和Library(函数库)并行的,在此提供的Android特有的Java内核函数库与可转换的Java运行码Bytecode,为Android专属的DalvikExecutable(.dex)文件格式的dalvik虚拟机,可以通过Java语言编写Android应用程序,并在Android平台上同时运行多个Java应用程序。Dalvik虚拟机依赖于Linux内核提供的基本功能,如线程和底层内存管理。Dalvik虚拟机可执行文件格式是.dex,dex格式是专为Dalvik设计的一种压缩格式,适合内存和处理器速度有限的系统。大多数虚拟机包括JVM都是基于栈的,而Dalvik虚拟机基于寄存器的。(3)ApplicationFramework(应用软件架构):它是所有Android重点应用程序FramworkAPI的总集合,主要的目的是让程序开发者可以更方便地使用这些常用的应用程序进行设计架构,以便更快速地开发Android应用程序。而这些常见的API有显示功能,如消息方块、条列消息、按钮、内嵌式浏览器等;消息提供功能,如访问信息、分享信息;资源管理功能,如图形、地方化字符串、布局文件等;提供消息功能,主要用来显示警告消息、特别是当使用者操作错误时,等其它功能。所有的应用程序其实是一组服务和系统,包括视图,丰富的、可扩展的视图集合,可用于构建一个应用程序。包括列表、网格、文本框、按钮,甚至是内嵌的网页浏览器。内容提供者,使应用程序能访问其它应用程序的数据,或者共享自己的数据;资源管理器,提供访问非代码资源,如本地化字符串、图像和布局文件;通知管理器,使所有的应用程序能够在状态栏显示自定义警告;活动管理器,管理应用程序生命周期,提供通用的导航回退功能。(4)Application(应用程序):最上层的应用程序都是用Java语言开发的应用程序,例如GoogleMaps、E_mail、即时通信工具、计算机、浏览器、通讯本、MP3播放器等。Windows下Android开发环境的搭建 在windows下开始Android开发之旅前,首先要进行环境搭建,以下将着重介绍这一过程1、JDK的下载与安装Android平台下应用程序的开发时采用Java语言的,所以首先需要下载并安装JDK。打开浏览器,在地址栏输入如下地址并访问:,打开后的页面如图2所示。图2、JDK下载界面单击如图2所示的“JDKDownload”按钮即可进入下载界面,选择操作系统平台后,就可以下载JDK了,目前最新的JDK版本为JDK7Update5。双击并运行下载好的JDK安装文件,按照提示将JDK安装到指定的文件夹中,我将它安装到C:\ProgramFiles\java\jdk1._05目录下。最重要的是进行环境变量的配置,步骤如下:我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:JAVA_HOME值为:C:\ProgramFiles\java\jdk_05;PATH值为:C:\ProgramFiles\java\jdk_05\bin;CLASSPATH值为:C:\ProgramFiles\java\jdk_05\jre\lib;2、Eclipse的下载与安装打开浏览器,在地址栏输入,打开后的页面如图3所示。在下载界面找到Eclispe,单击下载链接,将Eclipse下载到电脑上。Eclipse不需要安装,只需将下载到电脑上的压缩包解压到硬盘上某个目录即可。图3、Eclipse下载页面3、AndroidSDK安装 在AndroidDevelopers下载android-sdk_r18-windows.zip,下载完成后解压到任意路径。运行,程序将自动检测是否有更新的SDK版本可供下载,选择AvailablePackages。选择希望安装的SDK及其文档或者其它包,点击InstallationSelected、AcceptAll、InstallAccepted,开始下载安装所选包。4、ADT的安装 ADT实际上是一个工具,它可以连接sdk和Eclipse,帮助Eclipse找到sdk打开Eclipse界面,进入菜单中的“Help”->“InstallNewSoftware”,点击Add按钮弹出对话框要求输入Name和Location。如图4所示。图4、ADT安装 完成之后,选择Window->Preferences;往左边的面板选择Android,然后在右侧点击Browse;并选中SDK的路径,点击Apply、OK。配置完成。5、创建AVD 为使Android应用程序可以在模拟器上运行,必须创建AVD,步骤如下: 在Eclipse中,选择Windows->AndroidSDKandAVDManager,点击左侧面板的VirtualDevices,再右侧点击New,填入Name,选择Target的API,SDCard大小任意,Skin随便选,Hardware目前保持默认值,点击CreateAVD即可完成创建AVD。如图5所示。图5、AVD创建 AVD创建完成后,将会显示上图左边的列表中。单击start按钮,将会启动所选的AVD,启动过程需要一段时间,启动成功后的虚拟设备如图6所示。图6、虚拟设备结束语 Android应用程序开发着眼于它的整个系统架构,是一项复杂的工程。本文分析了Android系统架构,并讨论了在Windows系统下Android开发环境的搭建,Android平台本身大量使用开源类库,并且为开发人员提供了一个非常便捷的开发环境。参考文献[1]杨文志.GoogleAndroid程序设计指南[M].北京:电子

温馨提示

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

评论

0/150

提交评论