首页 > 代码库 > Android 第三课——项目结构及作用

Android 第三课——项目结构及作用

● src—包含项目的.java源文件。 在本例中, 有一个文件:HelloWorldActivity.java。HelloWorld Activity.java文件是活动的源文件,您将在这个文件中编写应用程序的代码。这个Java文件在项目的包名下列出,在本例中这个包名为net.learn2develop.HelloWorld。

注意:这里是就是应用程序的源代码,所有的业务逻辑处理都能在这里找到,虽然也可以在源代码中采用面向对象的方式进行界面编程,但是这种编程方式显然增加了难度,所以Google建议界面相关采用配置文件。

● gen—包含了由编译器生成的 R.java 文件,它引用在项目中能找到的全部资源。不要修改此文件。项目中的所有资源会自动编译到这个类中,所以可以使用这个类引用它们。

注意:R.java 文件其实是一个资源的索引文件,他把res目录下的文件按照索引存储编译成R文件,目的就是为了在程序中快速访问。

● Android 4.0 库—这一项中有一个 android.jar 文件,包含了一个 Android 应用程序所需的所有类库。

● assets—这个文件夹包含了应用程序所用到的所有资产,例如 HTML、文本文件、数据库等。

注意:这个文件和res还是有区别的,首先访问采用的是this.getAsserts().open(url)获取流,然后读取文件。

● bin—这个文件夹包含了生成过程中 ADT 生成的文件。特别是,它会生成.apk 文件(Android 包)。.apk 是 Android 应用程序的二进制文件,包含运行 Android 应用程序所需的一切。

● res—这个文件夹包含了应用程序中使用的所有资源。它还包含了几个子文件夹:drawable-<resolution>、layout 和 values。第 3 章将进一步讨论如何支持具有不同屏幕分辨率和像素密度的设备。

注意:主要存放图片、样式(主题)、布局、常量。这里的文件都会在gen的

R.java文件生成索引,便于应用程序访问,关于索引的规则是:如果是图片,那么索引就是图片的名称而且不需要扩展名;如果是布局文件,那么与图片一样;如果是布局文件中定义的组件,那么是以组件的ID为索引;如果是常量,也就是values文件夹下面的,该文件夹下面可以定义任何xml,但是他们的内容中会用特定的标签定义常量,然而标签就是数据类型,标签的名称就是索引,标签的内容就是常量。所以 @string/hello 会在values文件里查找所有子文件中有如下定义的

 <string name="hello">Hello World, HelloWorldActivity!</string> 

除此之外,res下的文件可以通过重新文件名来定义 横屏、竖屏、国际化、像素

比如,要使用横屏的布局可以这样定义一个文件夹:与layout(默认)同目录下新建 layout-land(横屏);layout-port(竖屏);values-zh(中文);values-zh-rcn(简体中文);drawabel-zh-mdpi 中文时采用图片

 proguard.cfg:用来混淆代码的配置文件,防止别人反编译

● AndroidManifest.xml—这是 Android 应用程序的清单文件。在这一文件中,可以指定应用程序所需的权限,还可以指定其他特性(如意图筛选器、接收者等)。这个文件主要控制应用程序的主题以及activity的显示。另外,清单文件在软件安装的时候被读取。Android中的四大组件(Activity、ContentProvider、BroadcastReceiver、Service)都需要在该文件中注册程序所需的权限也需要在此文件中声明,例如:电话、短信、互联网、访问SD卡

技术分享


Android 第三课——项目结构及作用