Android开发手记(24) Log的使用及颜色的更改
在程序开发过程中,LOG是广泛使用的用来记录程序执行过程的机制,它既可以用于程序调试,也可以用于产品运营中的事件记录。在Android系统中,提供了简单、便利的LOG机制,开发人员可以方便地使用。本文简单介绍了Android中Log的使用以及在Android Studio中 Log 颜色的更改。
要使用 Log,我们需要首先 import android.util.Log,其中Log常用的方法有5个:Log.v() Log.d() Log.i() Log.w() 以及 Log.e() 。根据首字母对应VERBOSE,DEBUG,INFORMATION,WARNING,ERROR。其中:
1、Log.v 的调试颜色为黑色的,任何消息都会输出。
2、Log.d的输出颜色是蓝色的,仅输出debug调试的意思,但他会输出上层的信息。
3、Log.i的输出为绿色,一般提示性的消息information,它不会输出Log.v和Log.d的信息,但会显示i、w和e的信息。
4、Log.w的意思为橙色,可以看作为warning警告,一般需要我们注意优化Android代码,同时选择它后还会输出Log.e的信息。
5、Log.e为红色,可以想到error错误,这里仅显示红色的错误信息,这些错误就需要我们认真的分析,查看栈的信息了。
我们新建一个Button,然后Click事件设置为:
Log.v("MainActivity", "This is Verbose.");
Log.d("MainActivity", "This is Debug.");
Log.i("MainActivity", "This is Information");
Log.w("MainActivity", "This is Warning.");
Log.e("MainActivity", "This is Error.");
此时,我们单击Button时,在Android/logcat中便会显示出Log信息:
但是,我们发现,Log信息在你的电脑上可能是白色和红色的。那么如何来修改Log信息的颜色呢?
- File->Settings 或Ctrl + Alt +S
- 找到 Editor -> Colors &Fonts -> Android Logcat 或在上面的搜索框中输入Logcat
- 点中Verbose , Info, Debug等选项,然后在后面将Use Inberited attributes 去掉勾选
- 再将 Foreground 前的复选框选上,就可以双击后面的框框去选择颜色了
- Apply–>OK
我们可以将Log颜色修改入下,便可得到上图所示的Log效果。
Log | 色值 |
VERBOSE | BBBBBB |
DEBUG | 0070BB |
INFOMATION | 48BB31 |
WARNING | BBBB23 |
ERROR | FF0006 |
ASSERT | 8F0005 |
至此便可得到上述的效果了。
完整代码如下:
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button; public class MainActivity extends Activity { private Button button; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); button = (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.v("MainActivity", "This is Verbose.");
Log.d("MainActivity", "This is Debug.");
Log.i("MainActivity", "This is Information");
Log.w("MainActivity", "This is Warning.");
Log.e("MainActivity", "This is Error.");
}
});
} }
Android开发手记(24) Log的使用及颜色的更改的更多相关文章
- Android 开发手记一NDK编程实例
在Android上,应用程序的开发,大部分基于Java语言来实现.要使用c或是c++的程序或库,就需要使用NDK来实现.NDK是Native Development Kit的简称.它是一个工具集,集成 ...
- Android.util.Log 关于Android开发中打印log
日常Android开发真机调试过程经常会遇到系统日志过多过快,想看的内容一闪而过的问题.而自定义些log可以很好的解决这些问题. 代码中添加 log androidsdk中提供了log输出的ap ...
- Android开发手记(32) 使用摄像头拍照
在Android中,使用摄像头拍照一般有两种方法, 一种是调用系统自带的Camera,另一种是自己写一个摄像的界面. 我们要添加如下权限: <uses-permission android:na ...
- Android开发手记(28) Handler和Looper
Android的消息处理有三个核心类:Looper,Handler和Message.其实还有一个Message Queue(消息队列),但是MQ被封装到Looper里面了,我们不会直接与MQ打交道.平 ...
- Android开发手记(19) 数据存储四 ContentProvider
转载自:http://www.cnblogs.com/devinzhang/archive/2012/01/20/2327863.html Android为数据存储提供了五种方式: 1.SharedP ...
- Android开发手记(9) DatePickerDialog 和 TimePickerDialog
1.DatePickerDialog 用于获取用户输入的日期信息.其原型为: public DatePickerDialog(Contex contex, DatePickerDialog.OnDa ...
- Android开发之封装log打印日志的工具类,实用logutils详细代码
public final class LogUtil { /** all Log print on-off */ private final static boolean all = true; /* ...
- 50个Android开发技巧(24 处理ListView数据为空的情况)
在移动平台上为用户展示数据的一个经常用法是将数据填充进一个List内,而此时须要注意的一点就是: 原文地址:(http://blog.csdn.net/vector_yi/article/d ...
- Android开发手记(22) 传感器的使用
Android的传感器主要包括八大传感器,他们分别是:加速度传感器(accelerometer).陀螺仪(gyroscope).方向传感器(orientation).磁力传感器(magnetic fi ...
随机推荐
- Unity3d 与IOS 相互调用
Unity3d 与IOS 相互调用 @灰太龙 群63438968 我用的Unity3d 4.2版本,这一节说一下IOS与U3D的交互! 首先在U3D中写个方法:这个时候导出为ios代码必须是真机,模拟 ...
- Play on Words
poj1386:http://poj.org/problem?id=1386 题意:给你n个单词,问你是否能够通过调整单词的顺序存在这样的一个序列,使得 每个单词的首字母是前一个单词的尾字母. 题解: ...
- C语言中如何使用宏
C(和C++)中的宏(Macro)属于编译器预处理的范畴,属于编译期概念(而非运行期概念).下面对常遇到的宏的使用问题做了简单总结. 宏使用中的常见的基础问题 #符号和##符号的使用 ...符号的 ...
- mysql explain 解释
就是10W记录比如全表返回1行 Mysql显示可能是10W oracle是1行 mysql 是预估需要扫描的记录 Oracle 是预估返回的记录
- oracle中触发器中:new和:old 的使用方法--4
转载▼ create or replace trigger TRI_PrintTest before delete or insert or update on TEST_EXAM --触发事 ...
- Light OJ 1004 - Monkey Banana Problem(DP)
题目大意: 给你一菱形的数字阵,问从最上面走到最下面所能获得的最大值是多少? #include<cstdio> #include<cstring> #include<io ...
- 【模拟】Codeforces 711B Chris and Magic Square
题目链接: http://codeforces.com/problemset/problem/711/B 题目大意: N*N的矩阵,有且只有一个0,求要把这个矩阵变成幻方要填什么正数.无解输出-1.幻 ...
- 《University Calculus》-chaper8-无穷序列和无穷级数-p级数
Q:定义p级数有如下形式,讨论p级数的敛散性.(p>o) 我们以p = 1作为分界点,因为实践表明这个分界点是最优区分度的.那么下面我们进行分情况讨论. 在这之前,我们有必要先引入一个检验敛散性 ...
- 二次战CPP链表
Felling By Ruiy: Pre-learnning link list knowloages 熟悉 指针相关操作应用+结构体数据类型应用,且能简单融合使用,堆内存(内存泄露)->类似于 ...
- Threading Module源码概述(二)
在threading 模块中,提供了列举当前所有子线程的操作.threading.enumerate.这个操作很简单,就是将_active和_limbo中维护的线程集合的信息输出. def enume ...