Android应用的目录组织结构及作用

转载请注明出处:http://www.jianshu.com/p/9e544e3fb2fb

你知道一个android项目的文件目录结构吗?你知道每一个文件夹的含义和作用吗?今天我将把自己知道的好好总结下,此篇文章将以eclipse为开发工具介绍android项目的目录组织及每个文件夹的作用,如果有误,欢迎指出。 

上图为以eclipse为开发工具的android项目的目录结构,其每个文件夹的含义分别为:

src: 该文件夹是放项目的源代码的,存放业务逻辑java代码;

gen: 该目录下的文件是ADT自动生成的,并不需要人为地去修改。实该目录下定义了一个R.java文件,该文件相当于项目的字典,项目中用户界面、字符串、图片、声音等资源都会在该类中创建唯一的ID。如果你引用了其他项目,在该目录下也会包含其他项目的R.java。

Android 6.0:直接支持的jar包,数字对应你开发选择的版本,6.0代表选择的API为23;

Android Private Libraries:表示引用第三方的jar包,视为私有引用,如高德地图api、微信支付宝支付等第三方jar包。

Android Dependencies:里面存放的是直接支持的类库Library,会显示引用项目,依赖于项目,如android 5.0的cardview项目。

assets:可以存放一些较大的资源文件,放置一些程序所需要的媒体文件;

bin: 工程的编译目录. 存放一些编译时产生的临时文件和当前工程的.apk文件;

libs: 当前工程所依赖的jar包,自建文件夹;

libscr:引入的jar包的注解文档和源码,自建文件夹;

res(resources):资源目录,包含项目中的资源文件并将编译进应用程序。向此目录添加资源时,会被R.java自动记录。res资源目录下的文件夹:

drawable:自定义的绘制图形,如shape、selector、layer-list 等样式绘制的图形;’

drawalbe-ldpi: 低分辨率的图片,如QVGA (240x320)

drawable-mdpi: 中等分辨率的图片,如HVGA (320x480)

drawable-hdpi: 高分辨率的图片,如WVGA (480x800),FWVGA (480x854)

drawable-xhdpi:至少960dp x 720dp,可以使用Resources.getDrawable(id)可以获得资源类型。

res/layout:存放所有的布局文件,就是我们能直接看到的界面;

res/values: 存放一些资源文件的信息,用于读取文本资源,将要定义的属性写在xml中,以达到资源重复利用。在本文件夹之中有一些约定的文件名称:

·arrays.xml:定义数组数据;

·dimens.xml:定义尺度,将要定义的属性写在dimens.xml中,以达到资源重复利用;

·strings.xml:定义字符串,可以使用Resources.getString()方法获得这些资源;

·styles.xml:定义显示的样式文件;。

·colors.xml:定义表示颜色的数据;

.res/raw:自定义的一些原生文件所在目录,像音乐、视频等文件格式。存放直接复制到设备中的任意文件,它们无需编译,添加到你的应用程序编译产生的压缩文件中。

res/anim:用于定义动画对象。存放定义了补间动画(tweened animation)或逐帧动画(frame by frame animation)的XML文件。

res/menu/:存放定义了应用程序菜单资源的XML文件。菜单资源文件必须放在res/menu目录中。

AndroidManifest.xml: 记录应用中所使用的各种组件;该文件为应用程序的系统控制文件,是项应用程序的总配置文件,是应用程序的全局描述文件,每一个应用程序都必须包含它。

project.properties: 指定当前工程采用的开发工具包的版本;

proguard-project.txt: 防反编译、混淆文件;

.keystore: 项目生成的密钥,打包时使用;

注意:

1.scr下的Java package和应用包名Application package的不同。

Java package:在APP中代码包主要组织类实现应用程序的业务逻辑,但与应用程序没有什么关系。观察到Android的java包只是本地应用程序意味着我们不必担心包名称与其他的应用程序发生冲突,所以我们可以直接把我们的java包直接复制到另一个不同的项目中去。

Application package:应用程序包在AndroidManifest.xml中声明的package是一个应用程序的标识符,这个标识符是独一无二的,不能有两个应用程序同时安装在同一部手机上。当你把你的应用上传到相关的应用商店时,这个也是要审核,应用商店也无法将两个相同包名的应用一起提供给用户下载,即使它们长的完全不一样。改了工程包名之后,程序就会被认为是另外一个程序,否则相同包名的apk在手机里面会相互覆盖。所以我们一般会以com.domain.myapp的样式来命名我们的app,降低重名的情况。包名是我们在一开始创建项目的时候就要求命名的了。

经过测试发现,android的Java package和Application package是完全不相干的,当应用包名和代码包名一致时,在清单文件中可以用.myActivity来定义类;

想了解更多请参考文章:http://blog.javia.org/android-package-name/

2.Android Support V4, V7, V13的区别和应用?

他们的本质是google官方提供了Android Support Library package 系列的包,其作用是用来保证高版本sdk开发的向下兼容性。

Android Support v4:  这个包是为了1.6及更高版本而设计的,这个包是使用最广泛的,eclipse新建工程时,都默认带有了。

Android Support v7:  这个包是为了2.1及更高版本而设计的,但不包含更低。另外注意,v7是要依赖v4这个包的,即,两个得同时被包含。

Android Support v13:这个包的设计是为了android 3.2及更高版本的,一般我们都不常用,平板开发中能用到。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容