【Android源码 栏目提醒】:网学会员--在 Android源码 编辑为广大网友搜集整理了:手机编程与手机游戏设计_第3讲Android应用程序 - 企业软件开发绩等信息,祝愿广大网友取得需要的信息,参考学习。
第3讲
Android应用程序计算中心张曙光主讲介绍:张曙光武汉大学计算中心电话: 飞信群:350569622011武大智能手机群Email: 126.comQQ群:82961565whu手机爱好者2011年3月22日星期二本讲学习目标掌握使用Eclipse开发
Android应用程序的方法掌握
Android虚拟设备的创建方法了解R.java文件的用途和生成方法了解
Android的程序结构了解
Android SDK的可视化界面设计演示上学期学生的一个游戏作业同样新的概念多请大家先会模仿和使用再事后体会和理解3.1第一个
Android程序创建
Android工程在Eclipse程序中建立过的
Android工程工程名称和目录结构将显示在PackageExplorer区域内3.1第一个
Android程序创建
Android工程打开
Android工程向导File→New→Project…
Android→AndroidProject 或File →New→Other…
Android→AndroidProject 3.1第一个
Android程序创建
Android工程填写工程名称工程名称必须唯一不能与已有的工程重名在Project name中填入HelloWorld3.1第一个
Android程序创建
Android工程选择创建方式可以创建新
Android工程也可利用已有代码创建
Android工程缺省为创建新
Android工程选择“Create new project in workspace”可以使用默认位置存储也可取消复选框选择其他位置保存缺省为使用默认位置D:/workplace/。
使用默认位置存储这里保存位置在D:/workplace/HelloWorld3.1第一个
Android程序创建
Android工程选择编译目标。
有多个选项例如:
Android 2.1是标准的2.1版本
Android系统API等级为7GoogleAPI的2.1版本的
Android系统API等级为7
Android 2.2是标准的2.2版本的
Android系统API等级为8GoogleAPI的2.2版本的
Android系统API等级为8选择不同版本的
Android系统引入不同版本的
android.jar包。
这里选择标准的2.2版本
Android系统3.1第一个
Android程序创建
Android工程填写相关信息应用程序名称即
Android程序在手机中显示的名称显示在手机的顶部。
在Application name填入HelloWorld3.1第一个
Android程序创建
Android工程填写相关信息包名称是包的命名空间需遵循Java包的命名方法由两个或多个标识符组成中间用点隔开。
为了包名称的唯一性可以采用反写电子邮件地址的方式。
在Packagename填入edu.whu.HelloWorld程序包相当于其它语言中的函数库一个包即为一个类库3.1第一个
Android程序创建
Android工程填写相关信息创建Activity是个可选项如需要自动生成一个Activity的代码文件则选择该项。
Activity的名称与应用程序的名称不同但为了简洁可以让他们相同表示这个Activity是
Android程序运行时首先显示给用户的界面。
在Create Activity填入HelloWorld3.1第一个
Android程序创建
Android工程填写相关信息SDK最低版本是
Android程序能够运行的最低的API等级如果手机的API等级低于程序的SDK最低版本则程序无法在该
Android系统中运行。
然后按下”Finish”3.1第一个
Android程序创建
Android工程3.1第一个
Android程序
Android虚拟设备AVDAVD
Android Virtual DeviceAVD是对
Android模拟器进行自定义的配置清单能够配置
Android模拟器的硬件列表和外观支持
Android系统版本、附件SDK库和储存设置等信息。
因为2.2版本的AndroidSDK中没有附带任何配置好的AVD所以需建立一个AVD3.1第一个
Android程序建立AVD打开
Android SDK and AVD ManagerWindow→
Android SDK and AVD Manager3.1第一个
Android程序建立AVD点击”New”按照手机硬件和软件环境填写数据3.1第一个
Android程序建立AVD选择Target3.1第一个
Android程序建立AVDSD CardSecure Digital Memory Card安全数码卡是一种基于半导体快闪记忆器的新一代记忆设备它被广泛地于便携式装置上使用例如数码相机、多媒体播放器等。
目前Simulator支持9M—128G的SD卡一般以256 或512 MB 为普遍设定值3.1第一个
Android程序建立AVDSnapshotAndroid模拟器消耗的硬件资源多。
在每一次模拟器您需要等待很长的载入时间。
勾选此选项后在每次关闭模拟器时它都会自动储存一份该模拟器的快照集Snapshot。
当下一次启动模拟器时它会预设”直接从快照集当中启动 Launch from snapshot ”以及”储存此次的快照集 Save to snapshot ”两选项。
若保留此预设勾选状态则模拟器会在此次启动时直接载入上次的快照集 Snapshot 以加快模拟器的启动时间。
3.1第一个
Android程序建立AVDSnapshot3.1第一个
Android程序建立AVDSkin 指屏幕外观Built-in 中的下拉选项中选择和你的手机合适的显示方式见后面具体的数据在手机的参数上都会标注最后点击“Create AVD”按钮3.1第一个
Android程序建立AVDHVGA half-size VGAVGA640480的一半尺寸分辨率为4803203:2的宽高比iPhone是HVGA 设备黑莓手机也有QVGA Quarter VGAVGA640480的四分之一尺寸亦即在LCD上输出的分辨率为240320像素这个分辨率和屏幕本身的大小有一定的关系就像我们在电脑屏幕上设置分辨率一样3.1第一个
Android程序建立AVDWQVGAWideQuarter VGA分辨率为48027216:9的宽高比 WQVGA400分辨率为4002405:3的宽高比WQVGA432分辨率为432240的宽高比比QVGA分辨率高WVGA Wide VGAWVGA800分辨率为800480的宽高比 WVGA854分辨率为854480的宽高比3.1第一个
Android程序建立AVD点击”Start” 显示模拟器3.1第一个
Android程序建立AVD3.1第一个
Android程序可以在这个AVD上进行CALLSMS等等模拟3.1第一个
Android程序建立AVDdos状态下启动CMD命令并进入/tools目录下。
androidlisttargets命令搜索/platforms和/add-ons目录下所有有效的
Android系统映像并将
Android系统映像列表显示在命令行工具中.显示可以选择的编译目标3.1第一个
Android程序建立AVD3.1第一个
Android程序建立AVD使用androidcreateavd-nandroid2.2–t2命令以id为2的2.2版本
Android系统为目标建立一个名为
Android2.2的AVD-n参数表明AVD的名称-t参数表明选择的
Android系统映像的id值可以直接缺省的硬件配置当然也可以重新定制模拟器支持的硬件清单3.1第一个
Android程序建立AVD在建立过程中
Android工具会在文件系统中建立
Android2.2.ini文件和
Android2.2.avd目录
Android2.2.ini文件用来保存
Android2.2.avd目录所在的位置
Android2.2.avd目录用来保存AVD配置文件、用户数据文件、SD卡映像和其他模拟器运行过程中可能产生的文件如果用户使用的是WindowsXP系统则目录保存在C:DocumentsandSettings.
android下如果用户使用的是WindowsVista系统则目录保存在C:Users.
android下3.1第一个
Android程序启动选项路径Run→RunConfiguration或Run→DebugConfiguration配置模拟器的启动选项可以选择不同的AVD、配置网络速度、网络延迟、控制台的字符编码和标准输入输出等内容。
一般只需选择正确的AVD即可3.1第一个
Android程序启动选项路径Run→RunConfiguration或Run→DebugConfiguration配置模拟器的启动选项可以选择不同的AVD、配置网络速度、网络延迟、控制台的字符编码和标准输入输出等内容。
一般只需选择正确的AVD即可3.1第一个
Android程序启动选项路径Run→RunConfiguration或Run→DebugConfiguration配置模拟器的启动选项可以选择不同的AVD、配置网络速度、网络延迟、控制台的字符编码和标准输入输出等内容。
一般只需选择正确的AVD即可3.1第一个
Android程序启动
Android程序路径Run→Run∣
Android Application或Run→Debug∣
Android Application在程序调试完毕后可直接再次运行
Android程序以便节约启动模拟器的时间3.1第一个
Android程序启动
Android程序3.2
Android程序结构在建立HelloWorld程序的过程中ADT会自动建立一些目录和文件这些目录和文件有其固定的作用有的允许修改有的不能修改。
下面逐一的介绍3.2
Android程序结构在“PackageExplore”中ADT以工程名称HelloWorld作为根目录将所有自动生成的和非自动生成的文件都保存在这个根目录下根目录包含四个子目录src、assets、res和gen一个库文件
android.jar以及两个工程文件Androidmanifest.xml和default.properties3.2
Android程序结构src目录是源代码目录所有允许用户修改的java文件和用户自己添加的java文件都保存在这个目录中HelloWorld工程建立初期ADT根据用户在工程向导中的“Create Activity”选项自动建立HelloWorld.java文件3.2
Android程序结构HelloWorld.java是
Android工程向导根据Activity名称创建的java文件这个文件完全可以手工修改。
为了在
Android系统上显示图形界面需要使用代码继承Activity类并在onCreate函数中声明需要显示的内容HelloWorld.java文件的代码如下1.package edu.whu.HelloWorld2.3.import
android.app.Activity4.import
android.os.Bundle5.6.public class HelloWorldextends Activity 7./ Called when the activity is first created. /8.Override9.public void onCreateBundlesavedInstanceState 10.super.onCreatesavedInstanceState11.setContentViewR.layout.main12.13.3.2
Android程序结构第1行表示把这个文件中的类打成包edu.whu.HelloWorld??package edu.whu.HelloWorldJava中用package语句用来将一个Java源文件中的类打成一个包Java编译器把包对应于文件系统来管理package语句中用”.”来指明目录的层次3.2
Android程序结构第3行和第4行的代码通过
android.jar从
Android SDK中引入了Activity和Bundle两个重要的类用于子类继承和信息传递1.import
android.app.Activity2.import
android.os.BundleImport 语句用来引入所需要的类Activity类是
Android程序的呈现层. 1 显示可视化的用户界面2 接收与用户交互所产生的界面事件在界面上的表现形式全屏窗体非全屏悬浮窗体对话框Bundle类 A mapping from String values to various Parcelabletypes.信息传递3.2
Android程序结构第6行代码声明HelloWorld类继承Activity类public class HelloWorldextends Activity 3.2
Android程序结构第8行代码表明需要重写onCreate函数1.Override2.public void onCreateBundlesavedInstanceState 3.super.onCreatesavedInstanceState4.setContentViewR.layout.main5.第9行代码的onCreate会在Activity首次启动时会被调用为了便于理解可以认为onCreate是HelloWorld程序的主入口函数第10行代码调用父类的onCreate函数并将savedInstanceState传递给父类savedInstanceState是Activity的状态信息3.2
Android程序结构第11行代码声明了需要显示的用户界面此界面是用XML语言描述的界面布局保存在res/ layout/main.xml资源文件setContentViewR.layout.main原型:public void setContentViewViewview Set the activity content to an explicit view. This view is placed directly into the activitys view hierarchy. It can itself be a complex view hierarhcy. Parametersview The desired content to display. 3.2
Android程序结构gen目录是用来保存ADT自动生成的java文件例如R.java或AIDL文件R.java文件是ADT自动生成的文件包含对drawable、layout和values目录内的资源的引用指针
Android程序能够直接通过R类引用目录中的资源3.2
Android程序结构R.java文件不能手工修改如果向资源目录中增加或删除了资源文件则可以在工程名称上右击选择Build Project来更新R.java文件中的代码3.2
Android程序结构R类包含的几个内部类分别与资源类型相对应资源ID便保存在这些内部类中例如子类drawable表示图像资源内部的静态变量icon表示资源名称其资源ID为0x7f020000。
一般情况下资源名称与资源文件名相同3.2
Android程序结构HelloAndroid工程生成的R.java文件的代码1.package edu.whu.HelloWorld2.public final class R 3.public static final class attr4.5.public static final class drawable6.public static final inticon0x7f0200007.8.public static final class layout 9.public static final intmain0x7f03000010.11.public static final class string 12.public static final intapp_name0x7f04000113.public static final inthello0x7f04000014.15.3.2
Android程序结构例如子类drawable表示图像资源内部的静态变量icon表示资源名称其资源ID为0x7f020000。
一般情况下资源名称与资源文件名相同可以通过getDrawableint得到并绘制到屏幕上Bitmap图象文件.png.jpg.gifXml文件为不同的状态引用不同的Bitmap图象例如当按钮按下时使用不同的图片3.2
Android程序结构子类layout表示布局资源一个屏幕的视图通常是通过加载一个xml资源文件实现的setContentViewR.layout.main一个布局资源也可以通过ID号在R.java中标识