[TOC]
## 一. 所需要的工具
**JDK**:Java语言软件开发工具包(建议JDK8以上).
**Android SDK**:google提供的Android开发工具包.
**Android Studio**:google提供的Android开发IDE.
[Android下载地址](https://pan.baidu.com/s/1nuABMDb)
## 二. Android工程目录结构
![](https://box.kancloud.cn/df592a4f195855d80a1e929720e45450_385x768.png)
新建一个工程HelloWorld后你会看到如上图目录.
目录结构分为**外层**(Project)和**内层**(Module),app目录下的是你要进行开发的模块.
### 2.1 外层结构(项目结构)
* .gradle .idea
IDE自动生成无需关心.
* app
内层模块,后面单独说.
* build
存放生成信息,无需关心.
* gradle
包含gradle wrapper的配置文件,使用gradle wrapper的方式不需要提前将gradle下载好,而是会自动根据本地的缓存情况决定是否要联网下载gradle。
* .gitignore
用于存放排除版本控制之外的文件(懂git的人应该不会陌生).
* build.gradle
全局的gradle构建脚本,通常不需要修改.
* gradle.properties
全局的gradle配置文件,通常也不需要修改.
* gradlew和gradlew.bat
用来在命令行中执行gradle命令的,通常不需要修改.
* HelloWorld.iml
IntlliJ IDEA项目都会自动生成的一个文件(Android Studio是基于IDEA开发的).
* local.properties
指定本机中的Android SDK路径,通常不需要修改,除非本机Android SDK发生变化.
* setting.gradle
指定工程项目中要引入的模块,此工程中只引入了app这一个模块.
![](https://box.kancloud.cn/dbb84906701c10f05c1451841274ee64_205x92.png)
### 2.2 内层结构(模块结构)
![](https://box.kancloud.cn/7bc6cb4c6133f725289ced754636e558_356x480.png)
* build
同外层结构.
* libs
存放第三方库(jar包).
* androidTest
编写测试用例.
* java
存放源代码.
* res
存放所有资源:图片(drawable)、布局(layout)、字符串(values)等等.
* AndroidManifest.xml
存放Android全局配置文件,以后经常要用.
* test
编写Unit Test测试用例的,是对项目进行自动化测试的另一种方式.
* .gitignore
同外部结构.
* app.iml
IntelliJ IDEA项目自动生成,无需关心.
* build.gradle
存放当前模块的gradle构建脚本.
* proguard-rules.pro
指定项目代码的一些混淆规则,防止别人轻易破解,有兴趣自己研究.
## 三、日志打印工具
Android中提供了日志打印工具类android.util.Log,不必再使用System.out.println()进行信息打印了.
|Api|等级|说明|
|-|-|-|
|Log.v()|verbose|打印最琐碎意义最小的信息|
|Log.d()|debug|对应调试信息|
|Log.i()|info|打印一些比较重要的数据|
|Log.w()|warn|打印一些警告信息|
|Log.e()|error|打印错误信息|
上面等级从低到高.
![](https://box.kancloud.cn/b559b4c3ed94586bd4c5c62c181360c8_1384x992.png)
Android studio提供的logcat窗口还可以自己设置过滤规则.
![](https://box.kancloud.cn/bf5a2874caa16dc86b92f2595b77f6ba_1384x992.png)
![](https://box.kancloud.cn/8da380fe57400c17c14d330568473349_1384x992.png)