Android学习(2)

详解build.gradle文件

外层目录下的build.gradle

Android Srudio采用gradle来构建项目,它使用了一种基于Groovy的领域特定语言(DSL)来声明项目设置,摈弃了传统基于XML的各种繁琐配置。

首先查看最外层目录下的build.gradle文件,代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
repositories {
google()
jcenter()

}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.0'
}
}

allprojects {
repositories {
jcenter()
google()
}
}
  • jcenter()是一个代码托管仓库,很多Android开源项目都会选择将代码托管到jcenter上,声明了这行配置之后,我们就可以在项目中轻松引用任何jcenter上的开源项目。
  • dependencies闭包中使用了classpath声明了一个gradle插件。因为gradle并不是专门为构建Android项目开发的,Java、c++等多种项目都可以使用gradle来构建。因此如果想要使用gradle来构建Android项目,就需要在dependencies声明com.android.tools.build:gradle:3.2.0(版本号)

Android的日志工具Log

Android中的日志工具类(android.util.Log),这个类提供了以下五个方法打印日志:

  • Log.v()
    对应verbose级别,是Android日志中级别最低的一种,用于打印那些最为琐碎、意义最小的日志信息。
  • Log.d()
    对应debug级别,用于打印一些调试信息。
  • Log.i()
    对应info级别,用于打印一些比较重要的数据。
  • Log.w()
    对应warn几倍,用于打印一些警告信息。
  • Log.e()
    对应级别error,用于打印程序的错误信息。

for example:

1
2
3
4
5
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.hello_world_layout);
Log.d("HelloWorldActivity", "onCreate execute");
}

Log.d() 方法中传入了两个参数:第一个参数是tag , 一般传入当前的类名就好, 主要用于对
打印信息进行过滤;第二个参数是msg , 即想要打印的具体的内容。