??????? 程序员在学习一门新的语言或一种新的技术时总喜欢以Hello World来入门,所以这次也不例外,同样以Android版的Hello World来开始Android的学习之旅。
??????? 说到Hello World我突然想到一个笑话,在这儿跟大家分享,希望有个愉快的开始。笑话是这样的。
??????? 某程序员酷爱书法,退休后决定在这方面有所建树,于是斥巨资购入高级文房四宝一套藏于家中。一日饭后突生雅兴,一番磨墨拟纸,并点上了上好的檀香,颇有王羲之之风范,又具颜真卿之气势。定神片刻,泼墨挥毫,郑重地写下一行字:“Hello World”。
??????? Android的Hello World很简单,只要建好工程,运行就行,所以本文主要是借着Hello World这个例子,介绍一下Android工程的结构和Emulator的一些基本使用方法。
?
一、Android工程的结构
?
?
- src :源码目录没什么好说的。
- gen :Generated Java Files 主要文件有R.java。该目录下的文件由ADT自动生成和更新,开发时无需管它,切记修改之。
- assets :用于存放原生文件的目录。存于res目录下的资源都会生成相应的ID,所以res下的资源只能通过ID来访问,而assets目录下的资源不会生成ID;res目录下的子目录有限制,而assets目录下没有;res目录下的资源可以使用Resources类来访问,而assets目录下的资源可以通过AssertManager类来访问。
- res :Resources文件夹,该目录与gen目录下的R.java相对应。当build工程时ADT会根据res目录在gen目录下生成一个R.java文件。res目录下的每个子目录都会在R类里生成一个跟目录同名的静态内部类;每个子目录下的每个文件都会在对应静态内部类中生成一个int类型的ID作为该内部静态类的静态成员。R类相当于是一个Android工程的资源清单,而Framework给我们提供了一个 android.content.res.Resources类,该类能通过R类下的ID来获取对应的资源。值得注意的是res目录下的子目录命名是有限制的,具体可以用那些名字可以参照android.R类的Reference。
- AndroidManifest.xml :该文件是Android应用程序的配置文件。详细内容可以参照Android Doc中的Dev Guide下的“The AndroidManifest.xml File”章节。
- default.properties :该文件是Ecllipse用于检查Android SDK版本的。