Android基础之项目结构分析
创建了第一个Android项目,用工具开发Android项目,我们有必要熟悉项目的目录结构,清楚各个项目下面放置的是什么东西。展开整个项目,其根目录结构(选用不同版本的SDK文件目录结构会有一些不同,但大致一样)如下图所示:

1. src目录
该目录一个普通的保存java源文件的目录,其和普通java工程中的src目录是一样的。
2. gen目录
此目录用于存放所有由ADT插件自动生成的内容。里面最重要的是名称为R.java的文件,这个java文件含有很多静态类,并对应于下面要介绍的res目录下的文件。R.java文件是只读模式的,不可自己更改。
3. Android2.3.3
此处表示该项目使用的SDK版本,即我们在创建项目时选择的"Build SDK"。
4. assets目录
该目录用于存放资源文件,但其存放的资源文件不可自动在gen目录的R.java文件中生成静态类的静态属性。可通过AssetManager类访问该目录下的资源文件。
5. bin目录
该目录只有在Android项目编译后才会自动生成,未编译的工程是不包含这个目录的。编译之后的字节码就存放在该目录下。编译的过程首先是编译成为 Android Java虚拟机(Dalvik Virtual Machine)文件classes.dex,再把该classes.dex文件打包成为apk包。
6. libs目录
该目录用于放置一些开发过程中需要的jar文件。
7. res目录
该目录和 assets目录一样也是用于存放资源文件,但它和 assets目录最大的区别在于, res目录下的资源文件会在gen目录下的R.java文件中产生以资源文件名命名的静态属性。
该目录下还包括一系列的文件目录,其中drawable-hdpi、drawable-ldpi、drawable-mdpi目录下分别用于存放高、低、 中分辨率的图片,用SDK 1.5版本创建的工程下只有一个drawable文件夹,新版本的SDK下之所以会产生多个存放图片的文件夹,主要是Android考虑到为了让图片资源 适应各种不同屏幕的分辨率,应用程序会自动根据手机分辨率选择对应的图片资源;
layout目录用于存放界面布局的xml文件;
menu目录用于存放菜单资源的xml文件;
values用于存放字符串资源、颜色资源、尺寸资源的xml文件。
8. AndroidManifest.xml文件
该文件是项目清单文件,里面列出了应用所具有的功能和你所使用的系统服务,另外我们开发好的各种组件(Activity、Service、ContentProvider、BroadcastReceiver)也要在此注册。
9. project.properties文件
该文件我们无需关心,它用于告诉开发工具目前的项目使用的Android API版本,无需改动。
Android基础之项目结构分析的更多相关文章
- Android Studio 新建项目结构分析
这是我刚刚新建的项目 默认都是Android模式的项目结构,但这并不是真实的目录结构 把他换成Project模式 项目的真实目录结构 1app 项目的代码,资源 2 gradle wrappere ...
- Android应用开发项目结构分析
初学Android开发,初步理解的Android应用项目结构,备忘. 一.清单文件AndroidManifest.xml 功能: 1.供Android平台调用,供其了解本应用的信息,因此,所有的组件( ...
- Android基础——项目的文件结构(三)
Android基础--项目的文件结构(三) 代码源文件夹与资源文件夹 [注]此项目文件结构仅限于Android Studio下的Android项目!!! 在一个Android项目中,代码源文件夹有4个 ...
- Android基础——项目的文件结构(二)
Android基础--项目的文件结构(二) AndroidManifest.xml文件分析 [注]此项目文件结构仅限于Android Studio下的Android项目!!! 在一个Android项目 ...
- Android基础——项目的文件结构(一)
Android基础--项目的文件结构(一) Android视图与Project视图对比 [注]此项目文件结构仅限于Android Studio下的Android项目!!! 在Android Studi ...
- Android基础新手教程——1.2.1 使用Eclipse + ADT + SDK开发Android APP
Android基础新手教程--1.2.1 使用Eclipse + ADT + SDK开发Android APP 标签(空格分隔): Android基础新手教程 1.前言 这里我们有两条路能够选,直接使 ...
- Mono.Android 基础
Mono.Android 基础 (地址) Mono.Android项目结构是 — Project + Assets + Resources + drawable + layout + values R ...
- 深入理解gradle编译-Android基础篇
深入理解gradle编译-Android基础篇 导读 Gradle基于Groovy的特定领域语言(DSL)编写的一种自动化建构工具,Groovy作为一种高级语言由Java代码实现,本文将对Gradle ...
- 基础4 Android基础
基础4 Android基础 1. Activity与Fragment的生命周期. Activity生命周期 打开应用 onCreate()->onStart()->onResume 按BA ...
随机推荐
- Struts2-S2-032远程命令执行EXP
看到网上好多写的EXP有后门啊 还是自己写个吧! 工具下载:链接: http://pan.baidu.com/s/1miRbi2k 密码: fzfv
- ABAP锁、数据库锁
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- SQL生成包含年月日的流水号
--************************************************************************************************** ...
- SQL——存储过程实例 调用带参数的过程(成绩输出)
create or replace procedure test_score(input in number,output out char) is begin then begin output : ...
- Perfection Kills
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- THE SENSE OF BEAUTY
#include<stdio.h> int main() { ][] = { " ,.:;j", " ,: i. .,:;ff", " : ...
- sysfs接口函数的建立_DEVICE_ATTR(转)
sysfs接口函数到建立_DEVICE_ATTR 最近在弄Sensor驱动,看过一个某厂家的成品驱动,里面实现的全都是sysfs接口,hal层利用sysfs生成的接口,对Sensor进行操作. 说道s ...
- js 函数-Tom
函数类型 在ECMAScript 中有三种函数类型:函数声明,函数表达式和函数构造器创建的函数.每一种都有自己的特点. 函数声明 函数声明(缩写为FD)是这样一种函数: 有一个特定的名称 在源码中的位 ...
- maven常见问题问答
1.前言 Maven,发音是[`meivin],"专家"的意思.它是一个很好的项目管理工具,很早就进入了我的必备工具行列,但是这次为了把project1项目完全迁移并应用maven ...
- C++中的虚继承 & 重载隐藏覆盖的讨论
虚继承这个东西用的真不多.估计也就是面试的时候会用到吧.. 可以看这篇文章:<关于C++中的虚拟继承的一些总结> 虚拟基类是为解决多重继承而出现的. 如:类D继承自类B1.B2,而类B1. ...