资源预览内容
第1页 / 共58页
第2页 / 共58页
第3页 / 共58页
第4页 / 共58页
第5页 / 共58页
第6页 / 共58页
第7页 / 共58页
第8页 / 共58页
第9页 / 共58页
第10页 / 共58页
亲,该文档总共58页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第3章 Android应用程序,3.1 第一个Android程序,创建Android工程 在Eclipse程序中建立过的Android工程,工程名称和目录结构将显示在Package Explorer区域内,3.1 第一个Android程序,创建Android工程 打开Android工程向导: FileNewProjectAndroidAndroid Project 或 File NewOther AndroidAndroid Project,3.1 第一个Android程序,创建Android工程 填写工程名称:工程名称必须唯一,不能与已有的工程重名 在Project name中填入HelloAndroid,3.1 第一个Android程序,创建Android工程 选择编译目标。有三个选项 第一个是标准的1.1版本Android系统,API等级为2 第二个是标准的1.5版本的Android系统, API等级为3 第三个是包含Google API的1.5版本的Android系统, API等级为3 选择不同版本的Android系统,引入不同版本的android.jar包。这里选择标准的1.5版本Android系统,3.1 第一个Android程序,创建Android工程 填写相关信息 应用程序名称,即Android程序在手机中显示的名称,显示在手机的顶部。在Application name填入HelloAndroid 包名称是包的命名空间,需遵循Java包的命名方法,由两个或多个标识符组成,中间用点隔开。为了包名称的唯一性,可以采用反写电子邮件地址的方式。,3.1 第一个Android程序,创建Android工程 填写相关信息 创建Activity是个可选项,如需要自动生成一个Activity的代码文件,则选择该项。Activity的名称与应用程序的名称不同,但为了简洁,可以让他们相同,表示这个Activity是Android程序运行时首先显示给用户的界面。在 Create Activity填入HelloAndroid,3.1 第一个Android程序,创建Android工程 填写相关信息 SDK最低版本是Android程序能够运行的最低的API等级,如果手机的API等级低于程序的SDK最低版本,则程序无法在该Android系统中运行。在这里,之前选择标准的1.5版本的Android系统,则SDK等级被自动填入3,此项无需更改,3.1 第一个Android程序,启动Eclipse,3.1 第一个Android程序,Android虚拟设备(AVD) AVD是对Android模拟器进行自定义的配置清单,能够配置Android模拟器的硬件列表和外观,支持Android系统版本、附件SDK库和储存设置等信息。因为1.5版本的Android SDK中没有附带任何配置好的AVD,所以需建立一个AVD,3.1 第一个Android程序,建立AVD 使用Windows系统命令行工具CMD:开始运行CMD中启动命令行工具,并进入/tools目录下。在这里,Android SDK 安装在E:Androidandroid-sdk-windows-1.5_r1 利用android list targets命令搜索/platforms和/add-ons目录下所有有效的Android系统映像,并将Android系统映像列表显示在命令行工具中,共有三个可以选择的编译目标:1.1版本Android系统、 1.5版本Android系统和Google API的1.5版本Android系统,其中前两个系统映像的Type属性是Platform,自行配置模拟器的硬件配置清单,最后一个的Type属性是Add-On,不能更改配置清单,3.1 第一个Android程序,建立AVD,3.1 第一个Android程序,建立AVD 使用android create avd-n android1.5 t 2命令,以id为2的1.5版本Android系统为目标,建立一个名为Android1.5的AVD -n参数表明AVD的名称 -t参数表明选择的Android系统映像的id值 可以直接缺省的硬件配置,当然也可以重新定制模拟器支持的硬件清单,3.1 第一个Android程序,建立AVD 在建立过程中,Android工具会在文件系统中建立Android1.5.ini文件和Android1.5.avd目录 Android1.5.ini文件用来保存Android1.5.avd目录所在的位置 Android1.5.avd目录用来保存AVD配置文件、用户数据文件、SD卡映像和其他模拟器运行过程中可能产生的文件 如果用户使用的是Windows XP系统,则目录保存在C:Documents and Settings.android下 如果用户使用的是Windows Vista系统,则目录保存在 C:Users.android下,3.1 第一个Android程序,启动选项 路径:RunRun Configuration或RunDebug Configuration配置模拟器的启动选项 可以选择不同的AVD、配置网络速度、网络延迟、控制台的字符编码和标准输入输出等内容。一般只需选择正确的AVD即可,3.1 第一个Android程序,启动Android程序 路径:RunRun Android Application或RunDebug Android Application 在程序调试完毕后,可直接再次运行Android程序,以便节约启动模拟器的时间,3.2 Android程序结构,在建立HelloAndroid程序的过程中,ADT会自动建立一些目录和文件,这些目录和文件有其固定的作用,有的允许修改,有的不能修改。下面逐一的介绍,3.2 Android程序结构,在“Package Explore”中,ADT以工程名称HelloAndroid作为根目录,将所有字段生成的和非自动生成的文件都保存在这个根目录下 根目录包含四个子目录:src、assets、res和gen,一个库文件android.jar,以及两个工程文件Androidmanifest.xml和default.properties,3.2 Android程序结构,src目录是源代码目录,所有允许用户修改的java文件和用户自己添加的java文件都保存在这个目录中 HelloAndroid工程建立初期,ADT根据用户在工程向导中的“Create Activity”选项,自动建立HelloAndroid.java文件,3.2 Android程序结构,HelloAndroid.java是Android工程向导根据Activity名称创建的java文件,这个文件完全可以手工修改。为了在Android系统上显示图形界面,需要使用代码继承Activity类,并在onCreate()函数中声明需要显示的内容 HelloAndroid.java文件的代码如下,3.2 Android程序结构,第3行和第4行的代码通过android.jar从Android SDK中引入了Activity和Bundle两个重要的包,用以子类继承和信息传递 第6行代码声明HelloAndroid类继承Activity类 第8行代码表明需要重写onCreate()函数 第9行代码的onCreate()会在Activity首次启动时会被调用,为了便于理解,可以认为onCreate()是HelloAndroid程序的主入口函数 第10行代码调用父类的onCreate()函数,并将savedInstanceState传递给父类,savedInstanceState是Activity的状态信息 第11行代码声明了需要显示的用户界面,此界面是用XML语言描述的界面布局,保存在scr/ layout/main.xml资源文件,3.2 Android程序结构,gen目录是1.5版本新增的目录,用来保存ADT自动生成的java文件,例如R.java或AIDL文件 R.java文件是ADT自动生成的文件,包含对drawable、layout和values目录内的资源的引用指针,Android程序能够直接通过R类引用目录中的资源,3.2 Android程序结构,R.java文件不能手工修改,如果向资源目录中增加或删除了资源文件,则需要在工程名称上右击,选择Refresh来更新R.java文件中的代码 R类包含的几个内部类,分别与资源类型相对应,资源ID便保存在这些内部类中,例如子类drawable表示图像资源,内部的静态变量icon表示资源名称,其资源ID为0 x7f020000。一般情况下,资源名称与资源文件名相同,3.2 Android程序结构,HelloAndroid工程生成的R.java文件的代码,3.2 Android程序结构,引用资源 资源引用有两种情况:一种是在代码中引用资源;另一种是在资源中引用资源 代码中引用资源,需要使用资源的ID,可以通过R.resource_type.resource_name或android.R.resource_type.resource_name获取资源ID resource_type代表资源类型,也就是R类中的内部类名称 resource_name代表资源名称,对应资源的文件名或在XML文件中定义的资源名称属性 资源中引用资源,引用格式: package:type:name 表示对资源的引用 package是包名称,如果在相同的包,package则可以省略,3.2 Android程序结构,android.jar文件是Android程序所能引用的函数库文件,Android通过平台所支持API都包含在这个文件中 assets目录用来存放原始格式的文件,例如音频文件、视频文件等二进制格式文件。此目录中的资源不能被R.java文件索引。,所以只能以资截流的形式读取。一般情况下为空,3.2 Android程序结构,res目录是资源目录,有三个子目录用来保存Android程序所有资源 drawable目录用来保存图像文件 layout目录用来保存与用户界面相关的布局文件 valuse目录保存文件颜色、风格、主题和字符串等 在Hello Android工程中,ADT在drawable目录中自动引入了icon.png文件,作为HelloAndroid程序的图标文件;在layout目录生成了mail.xml文件,用于描述用户界面,3.2 Android程序结构,main.xml文件,是界面布局文件,利用XML语言描述的用户界面 界面布局的相关内容将在第5章用户界面设计中进行详细介绍,3.2 Android程序结构,main.xml文件的代码 第7行的代码说明在界面中使用TextView控件,TextView控件主要用来显示字符串文本 第10行代码说明TextView控件需要显示的字符串,非常明显,string/hello是对资源的引用,3.2 Android程序结构,Strings.xml文件的代码 通过strings.xml文件的第3行代码分析,在TextView控件中显示的字符串应是“Hello World, HelloAndroid!” 如果读者修改strings.xml文件的第3行代码的内容,重新编译、运行后,模拟器中显示的结果也应该随之更改,3.2 Android程序结构,AndroidManifest.xml是XML格式的Android程序声明文件,包含了Android系统运行Android程序前所必须掌握的重要信息,这些信息包含应用程序名称、图标、包名称、模块组成、授权和SDK最低版本等,而且每个Android程序必须在根目录下包含一个AndroidManifest.xml文件,3.2 Android程序结构,AndroidManifest.xml文件的代码,3.2 Android程序结构,AndroidManifest.xml文
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号