Android 项目的目录结构 详细解析

 最近想把自己学到的知识 以Bolg的形式 写出来 ! 呵呵 写的不好 请大家见谅 欢迎指教 !

 

Android 项目的目录结构 详细解析_第1张图片

 

 

 

src/   java 原代码存放目录
gen/ 自动生成目录
gen 目录中存放所有由 Android 开发工具自动生成的文件。目录中最重要的就是 R.java 文件。 这个文件由 Android 开发工具自动产生的。 Android 开发工具会自动根据你放入 res 目录的资源,同步更新修改 R.java 文件。正因 R.java 文件是由开发工具自动生成的,所以我们应避免手工修改 R.java R.java 在应用中起到了字典的作 用,它包含了各种资源的 id ,通过 R.java ,应用可以很方便地找到对应资源。另外编绎器也会检查 R.java 表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。
res / 资源 (Resource) 目录
在这个目录中我们可以存放应用使用到的各种资源,如 xml 界面文件,图片或数据。具体请看 下方备注。
assets 资源目录
Android 除了提供 /res 目录存放资源文件外,在 / assets 目录也可以存放资源文件,而且 / assets 目录下的资源文件 不会在 R.java 自动生成 ID 所以读取 / assets 目录下的文件必须指定文件的路径,如: file:///android_asset/xxx.3gp
AndroidManifest.xml 项目清单文件
  这个文件列出了应用程序所提供的功能,以后你开发好的各种组件需要在该文件中进行配置,如果应用使用到了 系统内置的应用 ( 如电话服务、互联网服务、短信服务、 GPS 服务等等 ) ,你还需在该文件中声明使用权限。
default.properties 项目环境信息 ,一般是不需要修改此文件


Android应用是遵守MVC形式的 :
  视图层: 有layout 文件下 XML 文件组成 是应用的界面文件 类似于:JSP HTML


  补充一点: values.xml 是存放应用的文字信息的 单独弄出这个文件是为了以后能国际化和在应用中多个地方中使用到相同文字 重复利用 节省内存!




备注:
res/drawable 专门存放png、jpg等图标文件。在代码中使用 getResources().getDrawable(resourceId)获取该目录下的资源。
res/layout 专门存放xml界面文件,xml界面文件和HTML文件一样,主要用于显示用 户操作界面。
res/values 专门存放应用使用到的各种类型数据。不同类型的数据存放在不同的文 件中,如下:
· strings.xml 定义字符串和数值,在Activity中使用 getResources().getString(resourceId) 或 getResources().getText(resourceId)取得资源。它的作用和struts中的国 际化资源文件一样。
<?xml version="1.0" encoding="UTF-8"?>
<resources>
  <string name="itcast">传智播客</string>
</resources>
· arrays.xml 定义数组。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="colors">
<item>red</item>
<item>yellow</item>    
<item>green</item>    
<item>blue</item>  
</string-array>
</resources>
· colors.xml 定义颜色和颜色字串数值,你可以在Activity中使用 getResources().getDrawable(resourceId) 以及 getResources().getColor(resourceId)取得这些资源。例子如下:
      <?xml version="1.0" encoding="UTF-8"?>
<resources>
  <color name="contents_text">#ff0000</color>
</resources>
· dimens.xml 定义尺寸数据,在Activity中使用 getResources().getDimension(resourceId) 取得这些资源
      <?xml version="1.0" encoding="UTF-8"?>
<resources>
  <dimen name="key_height">50dip</dimen>
</resources>
· styles.xml 定义样式。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="itcastText" parent="@style/Text">
<item name="android:textSize">18sp</item>
<item name="android:textColor"> #0066FF </item>
</style>
</resources>
res/anim/ 存放定义动画的XML文件。
res/xml/ 在Activity中使用getResources().getXML()读取该目录下的XML资源文件
res/raw/ 该目录用于存放应用使用到的原始文件,如音效文件等。编译软件时,这 些数据不会被编译,它们被直接加入到程序安装包里。 为了在程序中使用这些 资源,你可以调用getResources().openRawResource(ID) , 参数ID形式: R.raw. somefilename
l

 

你可能感兴趣的:(Android 项目的目录结构 详细解析)