Log
Android 中的日志工具类。
它提供了如下5个方法来供我们打印日志。
- Log.v() 。用于打印最为琐碎的信息。级别
Verbose
- Log.d() 。用于打印调试信息。级别
Debug
- Log.i()。用于打印比较重要的数据,这些数据是你非常想看到的,可以帮助分析用于行为。级别
Info
- Log.w()。用于打印警告信息。提示程序在这个地方可能会有潜在的风险。级别
Warn
- Log.w()。用于打印错误信息。一般用在catch语句中。级别
Error
Timber
Timber是Log的升级拓展版。 使用它来记录日志会更加方便。它的优点包括
- 根据类名称为您生成日志标记。
- 帮助您避免在Android应用的发行版中显示日志。
- 允许与崩溃报告库集成。
使用步骤如下
1. 添加依赖
在app级build.gradle文件中添加
dependencies {
......
implementation 'com.jakewharton.timber:timber:4.7.1'
}
2. 创建一个Application类并初始化Timber
Application类是每个应用都必须用到的类,该类是在所有活动之前创建的,并且可以保存应用程序的全局状态。它是操作系统与应用进行交互的主要对象。如果未在manifests
文件指定,则会使用默认Application类。因此每个应用都会创建一个Application对象,而无须执行任何特殊操作。
而Timer之所以需要用到Application类,是因为整个应用程序都将使用此日志记录库,并且该库需要先初始化一次,再进行其他设置,所以我们可以新建一个自己的Application类,它继承于Application类。再重载相关默认方法。
新建一个特定的Application类
package com.example.android.你的程序名
class MyApplication : Application(){
override fun onCreate() {
super.onCreate()
// 初始化Timber
Timber.plant(Timber.DebugTree())
}
}
3. 修改AndroidManifest.xml
使用自己的Application类来代替默认的
<application
android:name=".MyApplication"
...
4. 使用
将原本的Log.i()改为 Timber.i(),它可以自动帮我们写Tag,也就是说,它只需接收一个参数即可。
Timber.i("onCreate called")