第一章 开始启程,你的第一行Android代码
1.1 Android简介
- Android系统架构
Linux内核层 | 为Android设备的各种硬件提供底层驱动 |
系统运行库层 | 通过C/C++库为Android系统提供主要的特性支持 |
应用框架层 | 提供了构建应用程序时可能用到的各种API |
应用层 | 安装在手机上的应用程序 |
- Android的四大组件
Activity | Android应用程序的“门面”,应用程序的可视部分 |
Service | 不可视,后台运行 |
Broadcast Receiver(广播接收器) | 允许你的应用接收广播消息,也可以向外发出消息,比如电话、短信 |
Content Provider(内容提供器) | 为应用程序之间共享数据提供了可能,比如读取通讯录中的联系人 |
1.2 搭建开发环境
1. 需要准备的工具
(1)JDK:Java语言的软件开发工具包
(2)Android SDK:Android开发工具包
(3)Android Studio:开发Android项目的IDE工具
2. Android官网地址:https://developer.android.google.cn/studio
国内的代理站点:http://www.android-studio.org
1.3 分析Android程序
1. 项目结构模式
.gradle和.idea | Android Studio 自动生成的一些文件,无须关心 |
app | 项目的代码和资源文件 |
build | 包含编译时自动生成的文件 |
gradle | 包含gradle wrapper的配置文件 |
.gitgnore | 将指定的目录或文件排除在版本控制之外 |
build.gradle | 项目全局的gradle构建脚本,一般都不需要修改 |
gradle.properties | 全局的gradle配置文件,直接影响项目中所有的gradle编译脚本 |
gradlew和gradlew.bat | 用来在命令行中执行gradle命令,其中gradlew是在Linux或Mac系统中使用的,gradlew.bat是在Windows系统中使用 |
HelloWorld.iml | iml文件是所有IntelliJ IDEA项目都会自动生成的一个文件,用于标识这是一个IntelliJ IDEA项目 |
local.properties | 用于指定本机中SDK的路径,自动生成,无需修改 |
settings.gradle | 指定项目中所有引入的模块 |
2. app 目录下的结构
build | 编译时自动生成的文件,无需关心 |
libs | 存放第三方jar包,放在该目录下的jar包会自动添加到构建路径中去 |
androidTest | 编写Android Test测试用例,对项目进行一些自动化测试 |
Java | 存放所有Java代码 |
res | 存放项目中所有图片、布局、字符串等资源文件 |
AndroidManifest.xml | Android项目配置文件 |
test | 编写Unit Test 测试用例,是对项目进行自动化测试的另一种方式 |
.gitgnore | 将app模块内指定的目录排除在版本控制之外 |
app.iml | IntelliJ IDEA项目自动生成的文件 |
build.gradle | app模块的gradle构建脚本 |
proguard-rules.pro | 指定项目代码的混淆规则 |
3. 详解build.gradle文件
最外层目录下的build.gradle文件,代码如下:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {