创建了第一个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基础之项目结构分析的更多相关文章

  1. Android Studio 新建项目结构分析

    这是我刚刚新建的项目  默认都是Android模式的项目结构,但这并不是真实的目录结构 把他换成Project模式 项目的真实目录结构 1app 项目的代码,资源 2 gradle  wrappere ...

  2. Android应用开发项目结构分析

    初学Android开发,初步理解的Android应用项目结构,备忘. 一.清单文件AndroidManifest.xml 功能: 1.供Android平台调用,供其了解本应用的信息,因此,所有的组件( ...

  3. Android基础——项目的文件结构(三)

    Android基础--项目的文件结构(三) 代码源文件夹与资源文件夹 [注]此项目文件结构仅限于Android Studio下的Android项目!!! 在一个Android项目中,代码源文件夹有4个 ...

  4. Android基础——项目的文件结构(二)

    Android基础--项目的文件结构(二) AndroidManifest.xml文件分析 [注]此项目文件结构仅限于Android Studio下的Android项目!!! 在一个Android项目 ...

  5. Android基础——项目的文件结构(一)

    Android基础--项目的文件结构(一) Android视图与Project视图对比 [注]此项目文件结构仅限于Android Studio下的Android项目!!! 在Android Studi ...

  6. Android基础新手教程——1.2.1 使用Eclipse + ADT + SDK开发Android APP

    Android基础新手教程--1.2.1 使用Eclipse + ADT + SDK开发Android APP 标签(空格分隔): Android基础新手教程 1.前言 这里我们有两条路能够选,直接使 ...

  7. Mono.Android 基础

    Mono.Android 基础 (地址) Mono.Android项目结构是 — Project + Assets + Resources + drawable + layout + values R ...

  8. 深入理解gradle编译-Android基础篇

    深入理解gradle编译-Android基础篇 导读 Gradle基于Groovy的特定领域语言(DSL)编写的一种自动化建构工具,Groovy作为一种高级语言由Java代码实现,本文将对Gradle ...

  9. 基础4 Android基础

    基础4 Android基础 1. Activity与Fragment的生命周期. Activity生命周期 打开应用 onCreate()->onStart()->onResume 按BA ...

随机推荐

  1. QWebView下载文件,QUrl中解析文件名

    参考网址: http://blog.csdn.net/cdnight/article/details/23658715 http://www.tuicool.com/articles/AzeaUz h ...

  2. 利用[后台]->[类别管理]为文章前后台添加类别名称【转】

    原网址:http://blog.csdn.net/yanhui_wei/article/details/7943176 1.给专题添加文章时,可以选择类别: 2.给文章模型.图片模型.下载模型的栏目下 ...

  3. Linux配置apache等系列

    1.Linux下安装.配置PHP环境 2.ubuntu12.0.4安装apache, php ,mysql 3   CentOs中mysql的安装与配置

  4. iOS - UISearchController

    前言 NS_CLASS_DEPRECATED_IOS(3_0, 8_0, "UISearchDisplayController has been replaced with UISearch ...

  5. Nexus4_屏幕截图目录

    1. /sdcard/Pictures/Screenshots/ 2. 3.

  6. caffe的data_reader.cpp分析一下干了点什么

    首先说明:下面的内容不一定对 类body: 变量:LayerParameter param_ :它里面放的是:body传进来的layerparameter的参数: BlockingQueue<s ...

  7. 最大的LeftMax与rightMax之差绝对值

    这两天去 牛客网 混了下,遇到的几道题都很有意思,尤其是今晚这道,比赛时不会做,后来看了别人的代码才突然想通的,题目链接: 最大的LeftMax与rightMax之差绝对值,大意是: 想了一晚都没想出 ...

  8. Subversion中文手册(svnbook) TortoiseSVN中文帮助手册

    文档地址 http://svndoc.iusesvn.com/

  9. Oracle数据库和DB2数据库分页SQL的区别举例

    --------------------------ORACLE数据库分页SQL举例------------------------------------------------ SELECT * ...

  10. ulua slua 下载地址

    ulua http://www.yanyulin.info/pages/2015/01/27193946190814.html   http://www.manew.com/blog-27966-25 ...