我们来看看Android 应用程序的基本档桉结构,以及各自所负责的内容。
src/ 源代码(source)目录
src 目录中包含了一个Android 应用程序中所需的各个程序码档桉。这些档桉被包在对
应package 的子目录下。( 如本章的BMI 例子中, 子目录指的就是
/src/com/demo/android/bmi/)
src 目录中比较关键的程序有:
1. Bmi.java 这个档桉的档名会随着你在建立一个新的程序专桉画面中所填入「Create
Activity」栏位值的不同而改变。这是新程序专桉中的主要程序区块。我们开发Android 程
序的多数时间,都是在src 目录下和Android 打交道。
gen/ 自动生成(Generate)目录
gen 目录中存放所有自动生成的档桉。
gen 目录中最关键的程序就是R.java 档。
2. R.java 这个档是自动产生的。会由ADT 插件自动根据你放入res 目录的XML 描
述文件、图像等资源,同步更新修改'R.java' 这个文件中。所有的Android 程序中都会有
以R.java 为名的这个档桉,你完全不需要,也应避免手工修改R.java 这个档桉。
R.java 中自动产生的「R」类别就像是个字典一样,包含了使用者界面、图像、字串
等各式的资源与相应的编号(id)。Android 应用程序中很多时候会需要透过R 类别调用资
源。编译时编译器也会查看这个资源列表,没有使用到的资源就不会编译进去,为手机应
用程序节省不必要没用的空间。
res/ 资源(Resource)目录
「res」目录中存放所有程序中用到的资源档桉。"资源档桉"指的是资料档桉,或编译
时会被转换成程序一部分的XML 描述档。Android 针对放在「res」目录下的不同子目录
的资源,会有各自不同处理方式。因此我们写程序时,最好能搞清楚各目录下分别可放置的内容。
res/ 中的程序:
3. layout/ 版面配置(layout)目录「layout」目录包含所有使用XML 格式的界面描述档。
「layout」中的XML 界面描述档就像写网页时用到的HTML 档桉一样,用来描述萤幕
上的版面编排与使用的界面元件。XML 界面描述档描述的内容可以是整张萤幕,也可以只
描述一部分的界面(例如描述用来产生对话框的界面元件)。
虽然你也能直接通过Java 来建立使用者界面,不过透过XML 描述档来建立使用者界
面相对更简单,架构也更清晰,以后维护时更容易釐清问题。要使用这些界面元件,应透过
「R.java」档中自动产生的「R」类别来调用。
4. values/ 参数值(value)目录「values」目录包含所有使用XML 格式的参数值描述档,
可以在此添加一些额外的资源如字串(很常用)、颜色、风格等。使用时也是透过「R」类
别来调用。
Android 功能清单
5. AndroidManifest.xml
「AndroidManifest.xml」是Android 程序的功能清单,应用程序在这离列出该工程所
提供的功能。当应用程序开启时,会提供诸如内容提供者(ContentProvider)、处理的资料类
型、实际运行的类别、跨应用程序的资讯等等讯息。你可以在此指定你的应用程序会使用
到的服务(诸如电话功能、网路功能、GPS 功能等)。当你新增一个页面行为类别(Activity) 时,
你也需要先在此注册这个新增的Activity 类别后,才能顺利调用。
参考

更多相关文章

  1. Android命令行下运行JAVA程序之StatusBar控制
  2. Android程序结构
  3. android 桌面程序 滑动抽屉 SlidingDraw,一个小小的demo
  4. android手机通过串口蓝牙透传模块与AVR单片机通信实例。。。蓝牙
  5. Android设置全屏状态下设置 android:fitsSystemWindows="true"界
  6. 【Android 界面效果29】研究一下Android滑屏的功能的原理,及scrol
  7. Android界面编程——Android基本控件
  8. Android进程管理机制及优化 for HTC HeRO(其它设备也可参考)+自动

随机推荐

  1. *Android闹钟原理
  2. 在Eclipse中用Scala语言开发Android应用
  3. 2018年Android面试整理
  4. Android(安卓)加载大图片,不压缩图片
  5. Android性能分析工具Systrace和TraceView
  6. Android(安卓)Emulator 2.0更新方法
  7. Android(安卓)ExpandableListActivity实
  8. 【转】【Android】开源项目汇总-备用
  9. RxJava学习笔记(Schedulers)
  10. Android(安卓)string-array简单使用