【Android开发日记】之入门篇(三)——Android目录结构
本文基于最新的Android 4.4来介绍。首先先来新建一个Demo的Android项目,完成之后会生成两个文件夹 appcompat_v7 和 Demo,具体如下:

一、appcompat_v7 这个文件夹是在最新的SDK中出现的(Android4.0即以上),其实我们开发中基本上用不上这货,无视掉就行。呃~,说一下这个文件夹的功能吧,它为了让Android Project 在API 7+的sdk版本(即Android2.1版本)可以访问ActionBar的API,才专门增加这个project,目的为了兼容低版本的SDK。当然,如果你嫌弃它,想要下次创建项目时让它消失,可以这么做——在程序配置界面,把Minimum Required SDK (应用程序所支持的Android最低版本)设置为API14:Android4.0项,其它参数不变。详细链接——http://jingyan.baidu.com/article/36d6ed1f5526f91bcf4883e4.html
二、项目文件夹——Demo
那么接下来才是重点,我会一个一个介绍项目中的目录。首先是src
- src/文件夹——源代码目录
平时我们写程序,建包建类都是在这里进行,这里存放着项目的所有精华和程序员的一切心血。 - gen/文件夹——系统自动生成代码目录
既然是系统自动生成的,所以我们大可不必管它。顺便提一下项目的重建,让系统代码重新自动生成——选中项目,再到eclipse的菜单栏,project->clean.. - 3个Android包——开发时提供的jar包存放目录
第一个是Android版本自带的jar包,系统核心内容。第二个同样是SDK更新后出现的,里面存放你要用到的jar包,包括你导入进去的jar包。第三个存放的appcompat的jar包,版本支持用。可能你从lib导入新的jar包后会出现新的以Android开头的目录,放心,这些都是无害的~~
顺便提一句怎么添加新的jar包——找到项目工程文件目录,进去之后新建一个libs的文件夹,将要导入的jar包放进去。回到eclipse,(记得先将项目刷新一遍)对着项目右键->Propreties->Java Bulid Path->Libraries->右侧的Add JARs->找到自己项目下的libs文件夹,选中要导入的jar包,完成就行了。 - assets/文件夹——资源目录
存放系统所要的资源,可以在里面任意的构建目录,但该目录下的资源文件不会再R.java自动生成ID。这些都是与res/文件夹的不同。
存放的资源命名请用小写开头,不然系统不会识别。 - bin/文件夹——同样是系统自动生成
build之后里面会生成APK文件,可以直接拿出来用 - libs/文件夹——存放自己所需的jar包
- res/文件夹——存放图片、布局、字符串等资源
里面的资源会在R.java中自动生成ID(需要在project->Build Automatically前打上勾)
(1)res/drawable-*dpi/ ——系统会根据分辨率来提取不同drawable文件夹里的图标。依次从h-m-l代表分辨率从高到低。当然只放一张在其中一个文件夹中系统也是可以读取的。
(2)res/layout文件夹 ——存放布局文件
(3)res/menu文件夹——存放菜单资源文件。菜单资源文件使用<menu>标签作为根节点。除了<menu>外,还有另外两个标签用于设置菜单项和分组,这两个标签是<item>和<group>。
(4)res/values文件夹——存放数据资源文件。可以存放不同类型的数据。比如arrays.xml、colors.xml、dimens.xml、styles.xml等等。根据版本的不同,也设置了不同的文件夹。 - AndroidManifest.xml——系统配置文件
项目的总配置文件,记录应用中所使用的各种组件。这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联 网 服务、短信服务、GPS服务等等)。另外当你新添加一个Activity的时候,也需要在这个文件中进行相应配置,只有配置好后,才能调用此 Activity。AndroidManifest.xml将包含如下设置:application permissions、Activities、intent filters等。 - project.properties ——环境文件
记录项目中所需要的环境信息,比如Android的版本等。 - 其他
ic_launcher-web.png:这个是为了google Play市场使用展示的图标,它需要的是512×512的高分辨率的图标。
proguard-project.txt
project.properties
这两个文件是为了保护Android项目而做的代码混淆使用的。
出处:(http://www.cnblogs.com/cpacm/p/3898600.html)
【Android开发日记】之入门篇(三)——Android目录结构的更多相关文章
- 【Android开发日记】第一个任务Android Service!Service靴+重力感应器+弹出窗口+保持执行
前言: 近期在写一个小程序,需求是手机摇一摇就弹窗出来.第一次使用了Service,学习了两天,实现了Service弹窗,开机启动,Service启动和销毁,Service保持一直执行. 满足了自己的 ...
- 【Android开发日记】之入门篇(十二)——Android组件间的数据传输
组件我们有了,那么我们缺少一个组件之间传递信息的渠道.利用Intent做载体,这是一个王道的做法.还有呢,可以利用文件系统来做数据共享.也可以使用Application设置全局数据,利用组件来进行控制 ...
- 【Android开发日记】之入门篇(九)——Android四大组件之ContentProvider
数据源组件ContentProvider与其他组件不同,数据源组件并不包括特定的功能逻辑.它只是负责为应用提供数据访问的接口.Android内置的许多数据都是使用ContentProvider形式,供 ...
- 【Android开发日记】之入门篇(十四)——Button控件+自定义Button控件
好久不见,又是一个新的学期开始了,为什么我感觉好惆怅啊!这一周也发生了不少事情,节假日放了三天的假(好久没有这么悠闲过了),实习公司那边被组长半强制性的要求去解决一个后台登陆的问题,结果就是把 ...
- 【Android开发日记】之入门篇(十一)——Android的Intent机制
继续我们的Android之路吧.今天我要介绍的是Android的Intent. 对于基于组件的应用开发而言,不仅需要构造和寻找符合需求的组件,更重要的是要将组件有机的连接起来,互联互通交换信息,才能够 ...
- 【Android开发日记】之入门篇(七)——Android数据存储(上)
在讲解Android的数据源组件——ContentProvider之前我觉得很有必要先弄清楚Android的数据结构. 数据和程序是应用构成的两个核心要素,数据存储永远是应用开发中最重要的主题之一,也 ...
- 【Android开发日记】之入门篇(五)——Android四大组件之Service
这几天忙着驾校考试,连电脑都碰不到了,今天总算告一段落了~~Service作为Android的服务组件,默默地在后台为整个程序服务,辅助应用与系统中的其他组件或系统服务进行沟通.它跟Activity的 ...
- 【Android开发日记】之入门篇(六)——Android四大组件之Broadcast Receiver
广播接受者是作为系统的监听者存在着的,它可以监听系统或系统中其他应用发生的事件来做出响应.如设备开机时,应用要检查数据的变化状况,此时就可以通过广播来把消息通知给用户.又如网络状态改变时,电量变化时都 ...
- 【Android开发日记】之入门篇(四)——Android四大组件之Activity
在Android中,无论是开发者还是用户,接触最多的就算是Activity.它是Android中最复杂.最核心的组件.Activity组件是负责与用户进行交互的组件,它的设计理念在很多方面都和Web页 ...
- 【Android开发日记】之入门篇(十三)——Android的控件解析
Android的控件都派生自android.view.View类,在android.widget包中定义了大量的系统控件供开发者使用,开发者也可以从View类及其子类中,派生出自定义的控件. 一.An ...
随机推荐
- javaScript编辑器sublime的安装
最近在学习js,学习任何一门语言之前,当然免不了最初的环境安装: 见:http://www.cnblogs.com/zhcncn/p/4113589.html
- mysql安装与基本管理,mysql密码破解
一.MySQL介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是 ...
- Vbs 测试程序一
转载请注明出处 有点小恶意哦!慎重测试 'This procedure is written in SeChaos, only for entertainment, not malicious com ...
- shell脚本批量下载资源并保留路径
示例资源列表 如url.txt: http://su.bdimg.com/static/superplus/img/logo_white_ee663702.png http://su.bdimg.co ...
- css3 skew坐标轴笔记
transform是css3中对于性能来说是比较安全的 在二维空间里面,skew有两个属性值:skewX,skewY,图形的变化也就是针对这两个值来操作: transform: skewX(45deg ...
- JNDI和JDBC的区别和联系及其使用方法
一.JNDI 和JDBC的区别和联系 两者都是API,是连接数据库的标准.并不是什么产品或方法. 二.JDBC 全称:Java Database Connectivity 以一种统一的方式来对各种各样 ...
- nginx 快速查看配置文件的方法
查看nginx实际调用的配置文件 1.查看nginx路径 ps aux|grep nginx root ?? S :43上午 :00.08 nginx: worker process root ?? ...
- Java系列学习说明
最近要回顾以前的开发知识了,每天一个案例,争取早日成为一名合格的程序猿,现在就是猴娃子级别的.
- 微信公众号开发java框架:wx4j(入门篇)
导航 入门 http://www.cnblogs.com/2333/p/6617819.html WxServlet介绍 MaterialUtils 素材工具类使用说明 http://www.cnbl ...
- .net网站数据抓取
最新项目需要抓取人民币汇率中间价的数据,所以就写了个简单的爬虫抓取数据.抓取的网站为:http://www.safe.gov.cn/wps/portal/sy/tjsj_hlzjj_inquire # ...