安卓开发技巧

 Android开发中LogCat工具的使用 

 

LogCat是Android中一个命令行工具,可以用于得到程序的log信息,本附录讲解其使用方法和其中的一些技巧。 

 

1.使用方法 

LogCat使用方法如下所示: 

LogCat [options] [filterspecs] 

LogCat的选项包括: 

  -s                    设置过滤器,如指定 '*:s'. 

  -f <filename>   输出到文件,默认情况是标准输出。 

  -r [<kbytes>]   Rotate log every kbytes. (16 if unspecified). Requires –f。 

  -n <count>      Sets max number of rotated logs to <count>, default 4。 

  -v <format>     设置log的打印格式,  <format> 是下面的一种: 

                         brief process tag thread raw time threadtime long。 

 

  -c                   清除所有log并退出。 

  -d                   得到所有log并退出 (不阻塞)。 

  -g                   得到环形缓冲区的大小并退出。 

  -b <buffer>     请求不同的环形缓冲区('main' (默认), 'radio', 'events')。 

  -B                   输出log到二进制中。 

 

过滤器的格式是一个这样的串: 

  <tag>[:priority] 

 

其中 <tag> 表示log的component, tag (或者使用 * 表示所有) , priority 如下所示: 

  V    Verbose 

  D    Debug 

  I    Info 

  W   Warn 

  E    Error 

  F    Fatal 

  S    Silent 

 

 

事实上LogCat的功能是由Android的类android.util.Log决定的,在程序中log的使用方法如下所示: 

Log.v() -------------------- VERBOSE 

Log.d() -------------------- DEBUG 

Log.i() -------------------- INFO 

Log.w() -------------------- WARN 

Log.e() -------------------- ERROR 

以上log的级别依次升高,Debug信息应当只存在于开发中,INFO、 WARN、ERROR这3种log将出现在发布版本中。 

 

对于Java类,可以声明一个字符串常量TAG,LogCat可以根据它来区分不同的log,例如,在计算器(Calculator)的类中,定义如下所示: 

 

public class Calculator extends Activity { 

/* ...... */ 

    private static final String LOG_TAG = "Calculator"; 

    private static final boolean DEBUG  = false; 

    private static final boolean LOG_ENABLED = DEBUG ? Config.LOGD : Config.LOGV; 

/* ...... */ 

   由此,所有在Calculator中使用的log,均以“Calculator”为开头。 

posted on 2014-08-14 13:20  qingchen1984  阅读(158)  评论(0编辑  收藏  举报

导航