【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 ...
随机推荐
- Fragment Touch事件泄露
当Fragment的栈里面有几个fragment的时候,这个时候如果是几个fragment状态是hide,当你触摸当前fragment的时候,下层的fragment的事件被触发,这是由于Touch事件 ...
- The Image Gallery Revisited
Lets apply the Best practices to the Image Gallery . /*** index.html ***/ <!DOCTYPE html> < ...
- Android 布局开发之百分比布局、弹性布局
1.百分比布局 很简单,超级简单.引用之后就可以使用了. compile 'com.android.support:percent:23+' git地址: https://github.com/Jul ...
- windows下使用Python出现No module named tkinter.ttk
1. 编辑工具使用Pycharm,windows平台,运行的时候报错误 2. 目前用的是Python2.7版本,对比了一下已有的库,名字不太一样,因此换成Python3.6的测试一下暂时没这个问题了. ...
- shell编程——参数传递
1.Linux Shell参数引用 $0 这个程式的执行名字$n 这个程式的第n个参数值,n=1..9$* 这个程式的所有参数$# 这个程式的参数个数$$ 这个程式的PID$! 执行上一个背景指令的P ...
- iOS笔记060 - 自定义控件
自定义tabBar 系统自带的tabBar不能满足需求 自己定义UITabBar 自定义一个类继承自UITabBar 实现initWithFrame和layoutSubviews方法即可. //#im ...
- Android color颜色-色号总结
code时经常会用到颜色,然而对于像我这样的对于颜色不是很敏感的同学来说,就很痛苦了. 我想要某种颜色,但是又说不出来具体是哪种:这边总结了一下color种类以及色号. <?xml versio ...
- 利用jsoup抓取网页图片
jsoup简介 jsoup is a Java library for working with real-world HTML. It provides a very convenient API ...
- Windows 下开发.NET Core应用
一.使用Visual Studio 2015开发1.1 依次安装Visual Studio 2015 Update 3.NET Core 1.0.0 - VS 2015 Tooling Preview ...
- 软工实践Alpha冲刺(10/10)
队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 完成所有界面的链接,整理与测试 展示GitHub当日代码/ ...