版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第3章章 Android运用程序运用程序3.1 第一个Android程序n创建Android工程n在Eclipse程序中建立过的Android工程,工程称号和目录构造将显示在Package Explorer区域内3.1 第一个Android程序n创建Android工程n翻开Android工程导游:nFileNewProjectAndroidAndroid Project 或n File NewOther AndroidAndroid Project n 3.1 第一个Android程序n创建Android工程n填写工程称号:工程称号必需独一,不能与已有的工程重名n在Project name中
2、填入HelloAndroid3.1 第一个Android程序n创建Android工程n选择创建方式n可以创建新Android工程,也可利用已有代码创建Android工程,缺省为创建新Android工程;选择“Create new project in workspacen可以运用默许位置存储,也可取消复选框,选择其他位置保管,缺省为运用默许位置E:/Android/workplace/。运用默许位置存储,这里保管位置在: E:/Android/workplace/HelloAndroid3.1 第一个Android程序n创建Android工程n选择编译目的。有三个选项n第一个是规范的1.1版本
3、Android系统,API等级为2n第二个是规范的1.5版本的Android系统, API等级为3n第三个是包含Google API的1.5版本的Android系统, API等级为3n选择不同版本的Android系统,引入不同版本的android.jar包。这里选择规范的1.5版本Android系统3.1 第一个Android程序n创建Android工程n填写相关信息n运用程序称号,即Android程序在手机中显示的称号,显示在手机的顶部。在Application name填入HelloAndroidn包称号是包的命名空间,需遵照Java包的命名方法,由两个或多个标识符组成,中间用点隔开。为了
4、包称号的独一性,可以采用反写电子邮件地址的方式。3.1 第一个Android程序n创建Android工程n填写相关信息n创建Activity是个可选项,如需求自动生成一个Activity的代码文件,那么选择该项。Activity的称号与运用程序的称号不同,但为了简约,可以让他们一样,表示这个Activity是Android程序运转时首先显示给用户的界面。在 Create Activity填入HelloAndroid3.1 第一个Android程序n创建Android工程n填写相关信息nSDK最低版本是Android程序可以运转的最低的API等级,假设手机的API等级低于程序的SDK最低版本,那
5、么程序无法在该Android系统中运转。在这里,之前选择规范的1.5版本的Android系统,那么SDK等级被自动填入3,此项无需更改3.1 第一个Android程序n启动Eclipse3.1 第一个Android程序nAndroid虚拟设备AVDn AVD是对Android模拟器进展自定义的配置清单,可以配置Android模拟器的硬件列表和外观,支持Android系统版本、附件SDK库和储存设置等信息。由于1.5版本的Android SDK中没有附带任何配置好的AVD,所以需建立一个AVDn 3.1 第一个Android程序n建立AVDn运用Windows系统命令行工具CMD:开场运转CMD
6、中启动命令行工具,并进入/tools目录下。在这里,Android SDK 安装在E:Androidandroid-sdk-windows-1.5_r1n利用android list targets命令搜索/platforms和/add-ons目录下一切有效的Android系统映像,并将Android系统映像列表显示在命令行工具中,共有三个可以选择的编译目的:1.1版本Android系统、 1.5版本Android系统和Google API的1.5版本Android系统,其中前两个系统映像的Type属性是Platform,自行配置模拟器的硬件配置清单,最后一个的Type属性是Add-On,不能
7、更改配置清单3.1 第一个Android程序n建立AVD3.1 第一个Android程序n建立AVDn运用android create avd-n android1.5 t 2命令,以id为2的1.5版本Android系统为目的,建立一个名为Android1.5的AVDn-n参数阐明AVD的称号n-t参数阐明选择的Android系统映像的id值n可以直接缺省的硬件配置,当然也可以重新定制模拟器支持的硬件清单3.1 第一个Android程序n建立AVDn在建立过程中,Android工具会在文件系统中建立Android1.5.ini文件和Android1.5.avd目录nAndroid1.5.in
8、i文件用来保管Android1.5.avd目录所在的位置nAndroid1.5.avd目录用来保管AVD配置文件、用户数据文件、SD卡映像和其他模拟器运转过程中能够产生的文件n假设用户运用的是Windows XP系统,那么目录保管在C:Documents and Settings.android下n假设用户运用的是Windows Vista系统,那么目录保管在 C:Users.android下3.1 第一个Android程序n启动选项n途径:RunRun Configuration或RunDebug Configuration配置模拟器的启动选项n可以选择不同的AVD、配置网络速度、网络延迟、
9、控制台的字符编码和规范输入输出等内容。普通只需选择正确的AVD即可3.1 第一个Android程序n启动Android程序n途径:RunRun Android Application或RunDebug Android Applicationn在程序调试终了后,可直接再次运转Android程序,以便节约启动模拟器的时间3.2 Android程序构造 在建立HelloAndroid程序的过程中,ADT会自动建立一些目录和文件,这些目录和文件有其固定的作用,有的允许修正,有的不能修正。下面逐一的引见3.2 Android程序构造n在“Package Explore中,ADT以工程称号HelloAnd
10、roid作为根目录,将一切字段生成的和非自动生成的文件都保管在这个根目录下n根目录包含四个子目录:src、assets、res和gen,一个库文件android.jar,以及两个工程文件Androidmanifest.xml和perties3.2 Android程序构造nsrc目录是源代码目录,一切允许用户修正的java文件和用户本人添加的java文件都保管在这个目录中nHelloAndroid工程建立初期,ADT根据用户在工程导游中的“Create Activity选项,自动建立HelloAndroid.java文件3.2 Android程序构造nHelloAndroi
11、d.java是Android工程导游根据Activity称号创建的java文件,这个文件完全可以手工修正。为了在Android系统上显示图形界面,需求运用代码承继Activity类,并在onCreate()函数中声明需求显示的内容nHelloAndroid.java文件的代码如下package edu.hdu.HelloAndroid; import android.app.Activity;import android.os.Bundle; public class HelloAndroid extends Activity /* Called when the activity is fi
12、rst created. */ Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); 3.2 Android程序构造n第3行和第4行的代码经过android.jar从Android SDK中引入了Activity和Bundle两个重要的包,用以子类承继和信息传送n第6行代码声明HelloAndroid类承继Activity类n第8行代码阐明需求重写onCreate()函数n第9行代码的onCreate(
13、)会在Activity初次启动时会被调用,为了便于了解,可以以为onCreate()是HelloAndroid程序的主入口函数n第10行代码调用父类的onCreate()函数,并将savedInstanceState传送给父类,savedInstanceState是Activity的形状信息n第11行代码声明了需求显示的用户界面,此界面是用XML言语描画的界面规划,保管在scr/ layout/main.xml资源文件3.2 Android程序构造ngen目录是1.5版本新增的目录,用来保管ADT自动生成的java文件,例如R.java或AIDL文件nR.java文件是ADT自动生成的文件,包
14、含对drawable、layout和values目录内的资源的援用指针,Android程序可以直接经过R类援用目录中的资源3.2 Android程序构造qR.java文件不能手工修正,假设向资源目录中添加或删除了资源文件,那么需求在工程称号上右击,选择Refresh来更新R.java文件中的代码qR类包含的几个内部类,分别与资源类型相对应,资源ID便保管在这些内部类中,例如子类drawable表示图像资源,内部的静态变量icon表示资源称号,其资源ID为0 x7f020000。普通情况下,资源称号与资源文件名一样3.2 Android程序构造nHelloAndroid工程生成的R.java文件
15、的代码package edu.hdu.HelloAndroid;public final class R public static final class attr public static final class drawable public static final int icon=0 x020000; public static final class layout public static final int main=0 x030000; public static final class string public static final int app_name=0
16、x040001; public static final int hello=0 x040000; 3.2 Android程序构造n援用资源n 资源援用有两种情况:一种是在代码中援用资源;另一种是在资源中援用资源n代码中援用资源,需求运用资源的ID,可以经过R.resource_type.resource_name或android.R.resource_type.resource_name获取资源IDnresource_type代表资源类型,也就是R类中的内部类称号nresource_name代表资源称号,对应资源的文件名或在XML文件中定义的资源称号属性n资源中援用资源,援用格式: pack
17、age:type:namen表示对资源的援用npackage是包称号,假设在一样的包,package那么可以省略3.2 Android程序构造nandroid.jar文件是Android程序所能援用的函数库文件,Android经过平台所支持API都包含在这个文件中nassets目录用来存放原始格式的文件,例如音频文件、视频文件等二进制格式文件。此目录中的资源不能被R.java文件索引。,所以只能以资截流的方式读取。普通情况下为空3.2 Android程序构造nres目录是资源目录,有三个子目录用来保管Android程序一切资源ndrawable目录用来保管图像文件nlayout目录用来保管与用
18、户界面相关的规划文件nvaluse目录保管文件颜色、风格、主题和字符串等n在Hello Android工程中,ADT在drawable目录中自动引入了icon.png文件,作为HelloAndroid程序的图标文件;在layout目录生成了mail.xml文件,用于描画用户界面3.2 Android程序构造nmain.xml文件,是界面规划文件,利用XML言语描画的用户界面n界面规划的相关内容将在第5章用户界面设计中进展详细引见3.2 Android程序构造nmain.xml文件的代码n第7行的代码阐明在界面中运用TextView控件,TextView控件主要用来显示字符串文本n第10行代码阐
19、明TextView控件需求显示的字符串,非常明显,string/hello是对资源的援用3.2 Android程序构造nStrings.xml文件的代码n经过strings.xml文件的第3行代码分析,在TextView控件中显示的字符串应是“Hello World, HelloAndroid!n假设读者修正strings.xml文件的第3行代码的内容,重新编译、运转后,模拟器中显示的结果也应该随之更改 Hello World, HelloAndroid! HelloAndroid3.2 Android程序构造nAndroidManifest.xml是XML格式的Android程序声明文件,包
20、含了Android系统运转Android程序前所必需掌握的重要信息,这些信息包含运用程序称号、图标、包称号、模块组成、授权和SDK最低版本等,而且每个Android程序必需在根目录下包含一个AndroidManifest.xml文件3.2 Android程序构造nAndroidManifest.xml文件的代码 3.2 Android程序构造nAndroidManifest.xml文件的根元素是manifest,包含了xmlns:android、package、android:versionCode和android:versionName共4个属性nxmlns:android定义了Androi
21、d的命名空间,值为schemas.android/apk/res/androidnpackage定义了运用程序的包称号nandroid:versionCode定义了运用程序的版本号,是一个整数值,数值越大阐明版本越新,但仅在程序内部运用,并不提供应运用程序的运用者nandroid:versionName定义了运用程序的版本称号,是一个字符串,仅限于为用户提供一个版本标识3.2 Android程序构造nmanifest元素仅能包含一个application元素,application元素中可以声明Android程序中最重要的四个组成部分,包括Activity、Service、BroadcastR
22、eceiver和ContentProvider,所定义的属性将影响一切组成部分n第6行属性android:icon定义了Android运用程序的图标,其中drawable/icon是一种资源援用方式,表示资源类型是图像,资源称号为icon,对应的资源文件为res/drawable目录下的icon.pngn第7行属性android:label那么定义了Android运用程序的标签称号n 3.2 Android程序构造nactivity元素是对Activity子类的声明,必需在AndroidManifest.xml文件中声明的Activity才干在用户界面中显示n第8行属性android:name
23、定义了实现Activity类的称号,可以是完好的类称号,也可以是简化后的类称号n第9行属性android:label那么定义了Activity的标签称号,标签称号将在用户界面的Activity上部显示,string/app_name同样属于资源援用,表示资源类型是字符串,资源称号为app_name,资源保管在res/values目录下的strings.xml文件中nintent-filter中声明了两个子元素action和category,intent-filter使HelloAndroid程序在启动时,将.HelloAndroid这个Activity作为默许启动模块3.2 Android程序
24、构造n可视化编辑器n 双击AndroidManifest.xml文件,直接进入可视化编辑器,用户可以直接编辑Android工程的运用程序称号、包称号、图标、标签和答应等相关属性3.2 Android程序构造perties文件记录Android工程的相关设置,该文件不能手动修正,需右键单击工程称号,选择“Properties进展修正n在perties文件中只需第12行是有效代码,阐明Android程序的编译目的# This file is automatically generated by Android Tools.# Do not modify
25、 this file - YOUR CHANGES WILL BE ERASED!# # This file must be checked in Version Control Systems.# # To customize properties used by the Ant build system use,# perties, and override values to adapt the script to your# project structure.# Project target.target=android-33.3 命令行创建程序n 命令行工具n命令
26、行工具保管在/tools目录下n利用命令行工具开发Android程序的步骤n运用android.bat建立HelloCommondline工程所需的目录和文件n运用Apache Ant对HelloCommondline工程进展编译和apk打包n运用adb.exe将HelloCommondline工程上传到Android模拟器中3.3 命令行创建程序n运用android.bat建立HelloCommondline工程所需的目录和文件nAndroid.bat是一个批处置文件,可以用来建立和更新Android工程,同时也管理AVD,可以创建Android工程所需求的目录构造和文件nAndroid.b
27、at建立和更新Android工程的命令和参数阐明命令命令参数参数说明说明备注备注android create project-k 包名称必备参数-n 工程名称-a Activity名称-t 新工程的编译目标必备参数-p 新工程的保存路径必备参数android update project-t 设定工程的编译目标 必备参数-p 工程的保存路径必备参数-n 工程名称3.3 命令行创建程序q建立过程:开场运转CMD 启动CMD 并进入/tools目录,输入命令q 或者q q新工程的称号为HelloCommandline,包称号为edu.hdu.HelloCommandline,Activity称号是
28、HelloCommandline,编译目的的ID为2,新工程的保管途径是E:AndroidworkplaceHelloCommandlineq android create project n HelloCommandline k edu.hrbeu.HelloCommandline a HelloCommandline t 2 p e:AndroidworkplaceHelloCommandlineandroid create project -name HelloCommandline -package edu.hrbeu.HelloCommandline -activity HelloC
29、ommandline -target 2 -path e:AndroidworkplaceHelloCommandline3.3 命令行创建程序q运转结果q 3.3 命令行创建程序q仔细察看android.bat建立的目录和文件,发现其中一些在Eclipse开发环境中从未出现过的目录和文件,例如build.xml、perties和tests目录。这些新目录和文件的出现,主要是为了在构建Android程序时运用Apache AntqApache Antq一个将软件编译、测试、部署等步骤联络在一同的自动化工具,多用于Java环境中的软件开发q假设在构建Android程序时运用Ap
30、ache Ant,可以简化程序的编译和apk打包过程3.3 命令行创建程序qHelloCommondline工程文件和目录列表文件文件说明说明AndroidManifest.xml应用程序声明文件build.xmlAnt的构建文件perties保存编译目标,由Android工具自动建立,不可手工修改perties保存自定义的编译属性 perties保存Android SDK的路径,仅供Ant使用eduhrbeuHelloCommandline/HelloCommandline.javaActivity文件bin/编译脚本输出目录gen/
31、保存Ant自动生成文件的目录, 例如R.javalibs/私有函数库目录res/资源目录src/源代码目录tests/测试目录3.3 命令行创建程序qHelloCommondline工程文件和目录列表qlibs目录用来保管私有的函数库文件,在工程创建初期是空文件夹qtests目录用于测试用途,在工程创建初期,文件夹的内容是HelloCommandline工程一切文件和目录的一个完成拷贝perties文件是保管Android SDK的途径的文件,由Android工具自动建立,不允许进展手工修正perties文件该的主要用途是供Apache Ant寻觅And
32、roid SDK的保管途径,第10行阐明了Android SDK的途径是E:Androidandroid-sdk-windows-1.5_r13.3 命令行创建程序perties文件的代码如下# This file is automatically generated by Android Tools.# Do not modify this file - YOUR CHANGES WILL BE ERASED!# # This file must *NOT* be checked in Version Control Systems,# as it contains in
33、formation specific to your local configuration. # location of the SDK. This is only used by Ant# For customization when using a Version Control System, please read the# header note.sdk-location=E:Androidandroid-sdk-windows-1.5_r13.3 命令行创建程序qBpertiesq保管自定义的编译属性的文件,可以修正运用程序的包称号、源代码目录和编译脚本输出目录等
34、Apache Ant编译属性q在工程建立初期,perties不包含任何有效代码,用户可以手工修正文件内容q假设需求修正运用程序的包称号,可以取消第8行的注释符号#,并将com.example.myproject交换为正确的包称号q修正源代码目录和编译脚本输出目录的位置,分别在perties文件的第11行和第14行3.3 命令行创建程序perties文件的代码如下# This file is used to override default values used by the Ant build system.# # This file
35、must be checked in Version Control Systems, as it is# integral to the build system of your project. # The name of your application package as defined in the manifest.# Used by the uninstall rule.#application-package=com.example.myproject # The name of the source folder.#source-folder=src # The name
36、of the output folder.#out-folder=bin3.3 命令行创建程序qBuild.xml是Apache Ant的构建文件,为编译Android程序提供根底信息q去除注释后的build.xml文件代码如下 3.3 命令行创建程序nbuild.xml文件的第4行至第6行代码分别阐明三个属性文件的称号n第8行至14行代码阐明了构建过程中运用到的库文件的途径15. 16. 3.3 命令行创建程序n运用Apache Ant对HelloCommondline工程进展编译和apk打包n下载Apache Ant地址: /bindownload.cgin网站
37、提供zip、tar.gz 和tar.bz2三种格式下载,Windows系统用户引荐下载zip格式的二进制包n这里下载的Apache Ant紧缩包为apache-ant-1.7.1-bin.zip,版本号为1.7.1,并将其解紧缩在E:Android目录下3.3 命令行创建程序q在windows系统中添加新的环境变量,Apache才干正常运转。修正位置:“我的电脑 “属性 “高级 “环境变量 “系统变量q新增的系统环境变量变量名变量名变量值变量值备注备注JAVA_HOMEC:Program FilesJavajdk_12新增变量ANT_HOMEE:Androidapache-ant-新增变量AN
38、DROID_HOMEE:Androidandroid-sdk-windows-1.5_r1新增变量CLASSPATH$ J AVA _ H O M E / j r e / l i b : $ J AVA _ H O M E / l i b : $JAVA_HOME/lib/tools.jar新增变量Path;%ANT_HOME%bin;%JAVA_HOME%/bin; % ANDROID_HOME %tools已有变量3.3 命令行创建程序qJAVA_HOME是JDK的安装目录,根据JDK实践安装位置进展修正qANT_HOME是Apache Ant的安装目录,根据Apache Ant实践安装位置进展修正qANDROID_HOME是Android SDK的安装目录,根据实践安装位置进展修正变量名变量名变量值变量值备注备注JAVA_HOMEC:Program FilesJavajdk_12新增变量ANT_HOMEE:Androidapache-ant-新增变量ANDROID_HOME E:Androidandroid-sdk-windows-1.5_r1新增变量CLASSPATH$ J AVA _ H O M E / j r e / l i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高校思想政治教育工作方案
- 热力一次线施工环境监测方案
- 语文一年级《ie üe er》说课稿
- 税法与实训学习通超星期末考试答案章节答案2024年
- 苏州文化学习通超星期末考试答案章节答案2024年
- 别墅外墙砌砖施工方案
- 心理委员角色与责任培训方案
- 娱乐媒体产业行业经营分析报告
- 大米与油类产品质量控制方案
- 人造毛皮染色行业相关项目经营管理报告
- 《托育服务政策法规与职业伦理》全套教学课件
- 2024秋三年级语文上册第二次月考达标检测卷第三四单元新人教版
- 2024年下半年辽宁事业单位高频500题难、易错点模拟试题附带答案详解
- 2024年房产中介佣金提成协议书范本
- 某港口码头工程施工组织设计
- 中医人工智能
- 人教版(2024)八年级上册物理第3章《物态变化》单元测试卷(含答案解析)
- 金属冶炼(铅、锌冶炼)主要负责人安全资格考试题库及答案
- 2024中国铁路集团全国招聘高频考题难、易错点模拟试题(共500题)附带答案详解
- 职业技术学校老年保健与管理专业(三年制)人才培养方案
- (全册各类齐全)二年级数学上册100道口算题大全54份(100题)
评论
0/150
提交评论